Marius Cramer
2014-08-25 8e283b5f69b1cbd6b454cd447569826b5f3793e4
Merge branch 'work-3.0.5.4p3' into 'stable-3.0.5'

Work for 3.0.5.4p4

See merge request !123
209 files modified
31 files added
1,685 files deleted
31172 ■■■■ changed files
install/dist/lib/fedora.lib.php 61 ●●●●● patch | view | raw | blame | history
install/dist/lib/gentoo.lib.php 62 ●●●●● patch | view | raw | blame | history
install/dist/lib/opensuse.lib.php 62 ●●●●● patch | view | raw | blame | history
install/install.php 5 ●●●●● patch | view | raw | blame | history
install/lib/installer_base.lib.php 79 ●●●●● patch | view | raw | blame | history
install/sql/ispconfig3.sql 2 ●●● patch | view | raw | blame | history
install/tpl/apache_ispconfig_fcgi_starter.master 2 ●●● patch | view | raw | blame | history
install/tpl/config.inc.php.master 2 ●●● patch | view | raw | blame | history
install/tpl/php_fpm_pool.conf.master 2 ●●● patch | view | raw | blame | history
install/update.php 8 ●●●●● patch | view | raw | blame | history
interface/lib/app.inc.php 13 ●●●●● patch | view | raw | blame | history
interface/lib/classes/IDS/.htaccess 5 ●●●●● patch | view | raw | blame | history
interface/lib/classes/IDS/Caching/ApcCache.php 144 ●●●●● patch | view | raw | blame | history
interface/lib/classes/IDS/Caching/CacheFactory.php 85 ●●●●● patch | view | raw | blame | history
interface/lib/classes/IDS/Caching/CacheInterface.php 64 ●●●●● patch | view | raw | blame | history
interface/lib/classes/IDS/Caching/DatabaseCache.php 277 ●●●●● patch | view | raw | blame | history
interface/lib/classes/IDS/Caching/FileCache.php 189 ●●●●● patch | view | raw | blame | history
interface/lib/classes/IDS/Caching/MemcachedCache.php 181 ●●●●● patch | view | raw | blame | history
interface/lib/classes/IDS/Caching/SessionCache.php 136 ●●●●● patch | view | raw | blame | history
interface/lib/classes/IDS/Config.ini.php 59 ●●●●● patch | view | raw | blame | history
interface/lib/classes/IDS/Config/Config.ini.php 91 ●●●●● patch | view | raw | blame | history
interface/lib/classes/IDS/Converter.php 779 ●●●●● patch | view | raw | blame | history
interface/lib/classes/IDS/Event.php 221 ●●●●● patch | view | raw | blame | history
interface/lib/classes/IDS/Filter.php 175 ●●●●● patch | view | raw | blame | history
interface/lib/classes/IDS/Filter/Storage.php 401 ●●●●● patch | view | raw | blame | history
interface/lib/classes/IDS/Init.php 174 ●●●●● patch | view | raw | blame | history
interface/lib/classes/IDS/Monitor.php 566 ●●●●● patch | view | raw | blame | history
interface/lib/classes/IDS/Report.php 339 ●●●●● patch | view | raw | blame | history
interface/lib/classes/IDS/Version.php 49 ●●●●● patch | view | raw | blame | history
interface/lib/classes/IDS/default_filter.json 933 ●●●●● patch | view | raw | blame | history
interface/lib/classes/IDS/default_filter.xml 787 ●●●●● patch | view | raw | blame | history
interface/lib/classes/IDS/license.txt 18 ●●●●● patch | view | raw | blame | history
interface/lib/classes/auth.inc.php 28 ●●●●● patch | view | raw | blame | history
interface/lib/classes/db_firebird.inc.php 384 ●●●●● patch | view | raw | blame | history
interface/lib/classes/db_mysql.inc.php 106 ●●●● patch | view | raw | blame | history
interface/lib/classes/form.inc.php 517 ●●●●● patch | view | raw | blame | history
interface/lib/classes/getconf.inc.php 17 ●●●●● patch | view | raw | blame | history
interface/lib/classes/ids.inc.php 149 ●●●●● patch | view | raw | blame | history
interface/lib/classes/remoting.inc.php 42 ●●●● patch | view | raw | blame | history
interface/lib/classes/validate_ftpuser.inc.php 28 ●●●●● patch | view | raw | blame | history
interface/lib/classes/validate_systemuser.inc.php 86 ●●●●● patch | view | raw | blame | history
interface/lib/config.inc.php 2 ●●● patch | view | raw | blame | history
interface/lib/lang/ar.lng 2 ●●●●● patch | view | raw | blame | history
interface/lib/lang/bg.lng 2 ●●●●● patch | view | raw | blame | history
interface/lib/lang/br.lng 2 ●●●●● patch | view | raw | blame | history
interface/lib/lang/cz.lng 2 ●●●●● patch | view | raw | blame | history
interface/lib/lang/de.lng 2 ●●●●● patch | view | raw | blame | history
interface/lib/lang/el.lng 2 ●●●●● patch | view | raw | blame | history
interface/lib/lang/en.lng 6 ●●●● patch | view | raw | blame | history
interface/lib/lang/es.lng 2 ●●●●● patch | view | raw | blame | history
interface/lib/lang/fi.lng 2 ●●●●● patch | view | raw | blame | history
interface/lib/lang/fr.lng 2 ●●●●● patch | view | raw | blame | history
interface/lib/lang/hr.lng 2 ●●●●● patch | view | raw | blame | history
interface/lib/lang/hu.lng 2 ●●●●● patch | view | raw | blame | history
interface/lib/lang/id.lng 2 ●●●●● patch | view | raw | blame | history
interface/lib/lang/it.lng 2 ●●●●● patch | view | raw | blame | history
interface/lib/lang/ja.lng 2 ●●●●● patch | view | raw | blame | history
interface/lib/lang/nl.lng 2 ●●●●● patch | view | raw | blame | history
interface/lib/lang/pl.lng 2 ●●●●● patch | view | raw | blame | history
interface/lib/lang/pt.lng 2 ●●●●● patch | view | raw | blame | history
interface/lib/lang/ro.lng 2 ●●●●● patch | view | raw | blame | history
interface/lib/lang/ru.lng 2 ●●●●● patch | view | raw | blame | history
interface/lib/lang/se.lng 4 ●●● patch | view | raw | blame | history
interface/lib/lang/sk.lng 2 ●●●●● patch | view | raw | blame | history
interface/lib/lang/tr.lng 2 ●●●●● patch | view | raw | blame | history
interface/lib/plugins/vm_openvz_plugin.inc.php 66 ●●●● patch | view | raw | blame | history
interface/temp/empty.dir patch | view | raw | blame | history
interface/web/admin/firewall_del.php 1 ●●●● patch | view | raw | blame | history
interface/web/admin/firewall_edit.php 1 ●●●● patch | view | raw | blame | history
interface/web/admin/groups_del.php 1 ●●●● patch | view | raw | blame | history
interface/web/admin/groups_edit.php 1 ●●●● patch | view | raw | blame | history
interface/web/admin/iptables_del.php 1 ●●●● patch | view | raw | blame | history
interface/web/admin/iptables_edit.php 1 ●●●● patch | view | raw | blame | history
interface/web/admin/iptables_list.php 2 ●●●●● patch | view | raw | blame | history
interface/web/admin/language_add.php 1 ●●●● patch | view | raw | blame | history
interface/web/admin/language_complete.php 1 ●●●● patch | view | raw | blame | history
interface/web/admin/language_edit.php 1 ●●●● patch | view | raw | blame | history
interface/web/admin/language_export.php 1 ●●●● patch | view | raw | blame | history
interface/web/admin/language_import.php 1 ●●●● patch | view | raw | blame | history
interface/web/admin/lib/lang/cz.lng 2 ●●● patch | view | raw | blame | history
interface/web/admin/lib/lang/cz_package_install.lng 2 ●●● patch | view | raw | blame | history
interface/web/admin/lib/lang/cz_remote_action.lng 4 ●●●● patch | view | raw | blame | history
interface/web/admin/lib/lang/cz_server_config.lng 4 ●●●● patch | view | raw | blame | history
interface/web/admin/lib/lang/cz_software_repo.lng 4 ●●●● patch | view | raw | blame | history
interface/web/admin/lib/lang/cz_software_repo_list.lng 4 ●●●● patch | view | raw | blame | history
interface/web/admin/lib/lang/cz_system_config.lng 2 ●●● patch | view | raw | blame | history
interface/web/admin/lib/lang/se_system_config.lng 2 ●●● patch | view | raw | blame | history
interface/web/admin/remote_action_osupdate.php 1 ●●●● patch | view | raw | blame | history
interface/web/admin/remote_user_del.php 1 ●●●● patch | view | raw | blame | history
interface/web/admin/remote_user_edit.php 3 ●●●●● patch | view | raw | blame | history
interface/web/admin/server_config_del.php 1 ●●●● patch | view | raw | blame | history
interface/web/admin/server_config_edit.php 2 ●●●●● patch | view | raw | blame | history
interface/web/admin/server_del.php 1 ●●●● patch | view | raw | blame | history
interface/web/admin/server_edit.php 1 ●●●● patch | view | raw | blame | history
interface/web/admin/server_ip_del.php 1 ●●●● patch | view | raw | blame | history
interface/web/admin/server_ip_edit.php 1 ●●●● patch | view | raw | blame | history
interface/web/admin/server_php_del.php 1 ●●●● patch | view | raw | blame | history
interface/web/admin/server_php_edit.php 1 ●●●● patch | view | raw | blame | history
interface/web/admin/software_package_del.php 1 ●●●● patch | view | raw | blame | history
interface/web/admin/software_package_edit.php 1 ●●●● patch | view | raw | blame | history
interface/web/admin/software_package_install.php 1 ●●●● patch | view | raw | blame | history
interface/web/admin/software_repo_del.php 1 ●●●● patch | view | raw | blame | history
interface/web/admin/software_repo_edit.php 1 ●●●● patch | view | raw | blame | history
interface/web/admin/software_update_list.php 1 ●●●● patch | view | raw | blame | history
interface/web/admin/system_config_edit.php 1 ●●●● patch | view | raw | blame | history
interface/web/admin/tpl_default.php 1 ●●●● patch | view | raw | blame | history
interface/web/admin/users_del.php 1 ●●●● patch | view | raw | blame | history
interface/web/admin/users_edit.php 13 ●●●●● patch | view | raw | blame | history
interface/web/client/lib/lang/se_client.lng 2 ●●● patch | view | raw | blame | history
interface/web/designer/form/empty.dir 1 ●●●● patch | view | raw | blame | history
interface/web/designer/form_edit.php 153 ●●●●● patch | view | raw | blame | history
interface/web/designer/form_list.php 89 ●●●●● patch | view | raw | blame | history
interface/web/designer/form_show.php 119 ●●●●● patch | view | raw | blame | history
interface/web/designer/index.php 1 ●●●● patch | view | raw | blame | history
interface/web/designer/lib/admin.conf.php 4 ●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/ar.lng 2 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/ar_form_edit.lng 24 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/ar_form_list.lng 7 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/ar_form_show.lng 18 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/ar_module_edit.lng 22 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/ar_module_list.lng 5 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/ar_module_nav_edit.lng 6 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/ar_module_nav_item_edit.lng 8 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/ar_module_show.lng 16 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/bg.lng 2 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/bg_form_edit.lng 24 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/bg_form_list.lng 7 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/bg_form_show.lng 18 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/bg_module_edit.lng 12 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/bg_module_list.lng 5 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/bg_module_nav_edit.lng 6 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/bg_module_nav_item_edit.lng 8 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/bg_module_show.lng 16 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/br.lng 2 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/br_form_edit.lng 24 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/br_form_list.lng 7 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/br_form_show.lng 18 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/br_module_edit.lng 22 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/br_module_list.lng 5 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/br_module_nav_edit.lng 6 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/br_module_nav_item_edit.lng 8 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/br_module_show.lng 16 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/cz.lng 2 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/cz_form_edit.lng 24 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/cz_form_list.lng 7 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/cz_form_show.lng 18 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/cz_module_edit.lng 22 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/cz_module_list.lng 5 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/cz_module_nav_edit.lng 6 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/cz_module_nav_item_edit.lng 8 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/cz_module_show.lng 16 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/de.lng 2 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/de_form_edit.lng 24 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/de_form_list.lng 7 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/de_form_show.lng 18 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/de_module_edit.lng 12 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/de_module_list.lng 5 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/de_module_nav_edit.lng 6 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/de_module_nav_item_edit.lng 8 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/de_module_show.lng 16 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/el.lng 2 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/el_form_edit.lng 24 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/el_form_list.lng 7 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/el_form_show.lng 18 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/el_module_edit.lng 12 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/el_module_list.lng 5 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/el_module_nav_edit.lng 6 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/el_module_nav_item_edit.lng 8 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/el_module_show.lng 16 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/en.lng 3 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/en_form_edit.lng 26 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/en_form_list.lng 7 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/en_form_show.lng 18 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/en_module_edit.lng 23 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/en_module_list.lng 5 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/en_module_nav_edit.lng 6 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/en_module_nav_item_edit.lng 8 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/en_module_show.lng 17 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/es.lng 2 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/es_form_edit.lng 24 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/es_form_list.lng 7 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/es_form_show.lng 18 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/es_module_edit.lng 12 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/es_module_list.lng 5 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/es_module_nav_edit.lng 6 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/es_module_nav_item_edit.lng 8 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/es_module_show.lng 16 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/fi.lng 2 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/fi_form_edit.lng 24 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/fi_form_list.lng 7 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/fi_form_show.lng 18 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/fi_module_edit.lng 22 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/fi_module_list.lng 5 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/fi_module_nav_edit.lng 6 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/fi_module_nav_item_edit.lng 8 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/fi_module_show.lng 16 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/fr.lng 2 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/fr_form_edit.lng 24 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/fr_form_list.lng 7 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/fr_form_show.lng 18 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/fr_module_edit.lng 12 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/fr_module_list.lng 5 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/fr_module_nav_edit.lng 6 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/fr_module_nav_item_edit.lng 8 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/fr_module_show.lng 16 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/hr.lng 2 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/hr_form_edit.lng 24 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/hr_form_list.lng 7 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/hr_form_show.lng 18 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/hr_module_edit.lng 12 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/hr_module_list.lng 5 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/hr_module_nav_edit.lng 6 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/hr_module_nav_item_edit.lng 8 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/hr_module_show.lng 16 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/hu.lng 2 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/hu_form_edit.lng 24 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/hu_form_list.lng 7 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/hu_form_show.lng 18 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/hu_module_edit.lng 22 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/hu_module_list.lng 5 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/hu_module_nav_edit.lng 6 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/hu_module_nav_item_edit.lng 8 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/hu_module_show.lng 16 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/id.lng 2 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/id_form_edit.lng 24 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/id_form_list.lng 7 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/id_form_show.lng 18 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/id_module_edit.lng 22 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/id_module_list.lng 5 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/id_module_nav_edit.lng 6 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/id_module_nav_item_edit.lng 8 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/id_module_show.lng 16 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/it.lng 2 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/it_form_edit.lng 24 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/it_form_list.lng 7 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/it_form_show.lng 18 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/it_module_edit.lng 22 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/it_module_list.lng 5 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/it_module_nav_edit.lng 6 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/it_module_nav_item_edit.lng 8 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/it_module_show.lng 16 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/ja.lng 2 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/ja_form_edit.lng 24 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/ja_form_list.lng 7 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/ja_form_show.lng 18 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/ja_module_edit.lng 22 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/ja_module_list.lng 5 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/ja_module_nav_edit.lng 6 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/ja_module_nav_item_edit.lng 8 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/ja_module_show.lng 16 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/nl.lng 2 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/nl_form_edit.lng 24 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/nl_form_list.lng 7 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/nl_form_show.lng 18 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/nl_module_edit.lng 22 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/nl_module_list.lng 5 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/nl_module_nav_edit.lng 6 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/nl_module_nav_item_edit.lng 8 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/nl_module_show.lng 16 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/pl.lng 2 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/pl_form_edit.lng 24 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/pl_form_list.lng 7 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/pl_form_show.lng 18 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/pl_module_edit.lng 22 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/pl_module_list.lng 5 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/pl_module_nav_edit.lng 6 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/pl_module_nav_item_edit.lng 8 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/pl_module_show.lng 16 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/pt.lng 2 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/pt_form_edit.lng 24 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/pt_form_list.lng 7 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/pt_form_show.lng 18 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/pt_module_edit.lng 22 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/pt_module_list.lng 5 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/pt_module_nav_edit.lng 6 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/pt_module_nav_item_edit.lng 8 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/pt_module_show.lng 16 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/ro.lng 2 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/ro_form_edit.lng 24 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/ro_form_list.lng 7 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/ro_form_show.lng 18 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/ro_module_edit.lng 12 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/ro_module_list.lng 5 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/ro_module_nav_edit.lng 6 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/ro_module_nav_item_edit.lng 8 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/ro_module_show.lng 16 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/ru.lng 2 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/ru_form_edit.lng 24 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/ru_form_list.lng 7 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/ru_form_show.lng 18 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/ru_module_edit.lng 22 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/ru_module_list.lng 5 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/ru_module_nav_edit.lng 6 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/ru_module_nav_item_edit.lng 8 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/ru_module_show.lng 16 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/se.lng 2 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/se_form_edit.lng 24 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/se_form_list.lng 7 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/se_form_show.lng 18 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/se_module_edit.lng 12 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/se_module_list.lng 5 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/se_module_nav_edit.lng 6 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/se_module_nav_item_edit.lng 8 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/se_module_show.lng 16 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/sk.lng 2 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/sk_form_edit.lng 24 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/sk_form_list.lng 7 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/sk_form_show.lng 18 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/sk_module_edit.lng 12 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/sk_module_list.lng 5 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/sk_module_nav_edit.lng 6 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/sk_module_nav_item_edit.lng 8 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/sk_module_show.lng 16 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/tr.lng 2 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/tr_form_edit.lng 24 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/tr_form_list.lng 7 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/tr_form_show.lng 18 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/tr_module_edit.lng 22 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/tr_module_list.lng 5 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/tr_module_nav_edit.lng 6 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/tr_module_nav_item_edit.lng 8 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/lang/tr_module_show.lng 16 ●●●●● patch | view | raw | blame | history
interface/web/designer/lib/module.conf.php 95 ●●●●● patch | view | raw | blame | history
interface/web/designer/list/empty.dir 1 ●●●● patch | view | raw | blame | history
interface/web/designer/module_edit.php 184 ●●●●● patch | view | raw | blame | history
interface/web/designer/module_list.php 69 ●●●●● patch | view | raw | blame | history
interface/web/designer/module_nav_del.php 81 ●●●●● patch | view | raw | blame | history
interface/web/designer/module_nav_edit.php 147 ●●●●● patch | view | raw | blame | history
interface/web/designer/module_nav_flip.php 92 ●●●●● patch | view | raw | blame | history
interface/web/designer/module_nav_item_del.php 83 ●●●●● patch | view | raw | blame | history
interface/web/designer/module_nav_item_edit.php 151 ●●●●● patch | view | raw | blame | history
interface/web/designer/module_nav_item_flip.php 94 ●●●●● patch | view | raw | blame | history
interface/web/designer/module_show.php 113 ●●●●● patch | view | raw | blame | history
interface/web/designer/templates/form_edit.htm 79 ●●●●● patch | view | raw | blame | history
interface/web/designer/templates/form_list.htm 29 ●●●●● patch | view | raw | blame | history
interface/web/designer/templates/form_show.htm 61 ●●●●● patch | view | raw | blame | history
interface/web/designer/templates/module_edit.htm 43 ●●●●● patch | view | raw | blame | history
interface/web/designer/templates/module_list.htm 23 ●●●●● patch | view | raw | blame | history
interface/web/designer/templates/module_nav_edit.htm 24 ●●●●● patch | view | raw | blame | history
interface/web/designer/templates/module_nav_item_edit.htm 33 ●●●●● patch | view | raw | blame | history
interface/web/designer/templates/module_show.htm 31 ●●●●● patch | view | raw | blame | history
interface/web/designer/templates/paging.tpl.htm 9 ●●●●● patch | view | raw | blame | history
interface/web/dns/lib/lang/ar_dns_slave_admin_list.lng 14 ●●●● patch | view | raw | blame | history
interface/web/dns/lib/lang/ar_dns_soa_admin_list.lng 18 ●●●● patch | view | raw | blame | history
interface/web/dns/lib/lang/bg_dns_slave_admin_list.lng 14 ●●●● patch | view | raw | blame | history
interface/web/dns/lib/lang/bg_dns_soa_admin_list.lng 18 ●●●● patch | view | raw | blame | history
interface/web/dns/lib/lang/br_dns_slave_admin_list.lng 14 ●●●● patch | view | raw | blame | history
interface/web/dns/lib/lang/br_dns_soa_admin_list.lng 18 ●●●● patch | view | raw | blame | history
interface/web/dns/lib/lang/cz_dns_slave_admin_list.lng 16 ●●●● patch | view | raw | blame | history
interface/web/dns/lib/lang/cz_dns_soa_admin_list.lng 18 ●●●● patch | view | raw | blame | history
interface/web/dns/lib/lang/el_dns_slave_admin_list.lng 14 ●●●● patch | view | raw | blame | history
interface/web/dns/lib/lang/el_dns_soa_admin_list.lng 18 ●●●● patch | view | raw | blame | history
interface/web/dns/lib/lang/es_dns_slave_admin_list.lng 14 ●●●● patch | view | raw | blame | history
interface/web/dns/lib/lang/es_dns_soa_admin_list.lng 18 ●●●● patch | view | raw | blame | history
interface/web/dns/lib/lang/fi_dns_slave_admin_list.lng 14 ●●●● patch | view | raw | blame | history
interface/web/dns/lib/lang/fi_dns_soa_admin_list.lng 18 ●●●● patch | view | raw | blame | history
interface/web/dns/lib/lang/fr_dns_slave_admin_list.lng 14 ●●●● patch | view | raw | blame | history
interface/web/dns/lib/lang/fr_dns_soa_admin_list.lng 18 ●●●● patch | view | raw | blame | history
interface/web/dns/lib/lang/hr_dns_slave_admin_list.lng 14 ●●●● patch | view | raw | blame | history
interface/web/dns/lib/lang/hr_dns_soa_admin_list.lng 18 ●●●● patch | view | raw | blame | history
interface/web/dns/lib/lang/hu_dns_slave_admin_list.lng 14 ●●●● patch | view | raw | blame | history
interface/web/dns/lib/lang/hu_dns_soa_admin_list.lng 18 ●●●● patch | view | raw | blame | history
interface/web/dns/lib/lang/id_dns_slave_admin_list.lng 14 ●●●● patch | view | raw | blame | history
interface/web/dns/lib/lang/id_dns_soa_admin_list.lng 18 ●●●● patch | view | raw | blame | history
interface/web/dns/lib/lang/it_dns_slave_admin_list.lng 14 ●●●● patch | view | raw | blame | history
interface/web/dns/lib/lang/it_dns_soa_admin_list.lng 18 ●●●● patch | view | raw | blame | history
interface/web/dns/lib/lang/ja_dns_slave_admin_list.lng 14 ●●●● patch | view | raw | blame | history
interface/web/dns/lib/lang/ja_dns_soa_admin_list.lng 18 ●●●● patch | view | raw | blame | history
interface/web/dns/lib/lang/nl_dns_slave_admin_list.lng 14 ●●●● patch | view | raw | blame | history
interface/web/dns/lib/lang/nl_dns_soa_admin_list.lng 18 ●●●● patch | view | raw | blame | history
interface/web/dns/lib/lang/pl_dns_slave_admin_list.lng 14 ●●●● patch | view | raw | blame | history
interface/web/dns/lib/lang/pl_dns_soa_admin_list.lng 18 ●●●● patch | view | raw | blame | history
interface/web/dns/lib/lang/pt_dns_slave_admin_list.lng 14 ●●●● patch | view | raw | blame | history
interface/web/dns/lib/lang/pt_dns_soa_admin_list.lng 18 ●●●● patch | view | raw | blame | history
interface/web/dns/lib/lang/ro_dns_slave_admin_list.lng 14 ●●●● patch | view | raw | blame | history
interface/web/dns/lib/lang/ro_dns_soa_admin_list.lng 18 ●●●● patch | view | raw | blame | history
interface/web/dns/lib/lang/ru_dns_slave_admin_list.lng 14 ●●●● patch | view | raw | blame | history
interface/web/dns/lib/lang/ru_dns_soa_admin_list.lng 18 ●●●● patch | view | raw | blame | history
interface/web/dns/lib/lang/se_dns_slave_admin_list.lng 14 ●●●● patch | view | raw | blame | history
interface/web/dns/lib/lang/se_dns_soa_admin_list.lng 18 ●●●● patch | view | raw | blame | history
interface/web/dns/lib/lang/sk_dns_slave_admin_list.lng 14 ●●●● patch | view | raw | blame | history
interface/web/dns/lib/lang/sk_dns_soa_admin_list.lng 18 ●●●● patch | view | raw | blame | history
interface/web/dns/lib/lang/tr_dns_slave_admin_list.lng 14 ●●●● patch | view | raw | blame | history
interface/web/dns/lib/lang/tr_dns_soa_admin_list.lng 18 ●●●● patch | view | raw | blame | history
interface/web/js/scrigo.js.php 3 ●●●● patch | view | raw | blame | history
interface/web/login/index.php 7 ●●●●● patch | view | raw | blame | history
interface/web/login/lib/lang/se_login_as.lng 6 ●●●● patch | view | raw | blame | history
interface/web/mail/lib/lang/cz.lng 4 ●●●● patch | view | raw | blame | history
interface/web/mail/lib/lang/cz_mail_user.lng 2 ●●● patch | view | raw | blame | history
interface/web/mail/lib/lang/cz_mail_whitelist_list.lng 2 ●●● patch | view | raw | blame | history
interface/web/mail/lib/lang/cz_spamfilter_whitelist_list.lng 2 ●●● patch | view | raw | blame | history
interface/web/mail/lib/lang/se_mail_get.lng 2 ●●● patch | view | raw | blame | history
interface/web/remote/index.php 6 ●●●● patch | view | raw | blame | history
interface/web/sites/form/ftp_user.tform.php 4 ●●●● patch | view | raw | blame | history
interface/web/sites/form/shell_user.tform.php 11 ●●●●● patch | view | raw | blame | history
interface/web/sites/form/web_domain.tform.php 16 ●●●●● patch | view | raw | blame | history
interface/web/sites/form/web_vhost_subdomain.tform.php 2 ●●● patch | view | raw | blame | history
interface/web/sites/lib/lang/ar_shell_user.lng 2 ●●●●● patch | view | raw | blame | history
interface/web/sites/lib/lang/ar_web_domain.lng 1 ●●●● patch | view | raw | blame | history
interface/web/sites/lib/lang/bg_shell_user.lng 2 ●●●●● patch | view | raw | blame | history
interface/web/sites/lib/lang/bg_web_domain.lng 1 ●●●● patch | view | raw | blame | history
interface/web/sites/lib/lang/br_shell_user.lng 2 ●●●●● patch | view | raw | blame | history
interface/web/sites/lib/lang/br_web_domain.lng 1 ●●●● patch | view | raw | blame | history
interface/web/sites/lib/lang/cz_ftp_user.lng 6 ●●●● patch | view | raw | blame | history
interface/web/sites/lib/lang/cz_shell_user.lng 6 ●●●●● patch | view | raw | blame | history
interface/web/sites/lib/lang/cz_web_aliasdomain.lng 4 ●●●● patch | view | raw | blame | history
interface/web/sites/lib/lang/cz_web_domain.lng 1 ●●●● patch | view | raw | blame | history
interface/web/sites/lib/lang/cz_web_folder_list.lng 2 ●●● patch | view | raw | blame | history
interface/web/sites/lib/lang/cz_web_folder_user_list.lng 2 ●●● patch | view | raw | blame | history
interface/web/sites/lib/lang/cz_web_vhost_subdomain.lng 2 ●●● patch | view | raw | blame | history
interface/web/sites/lib/lang/cz_webdav_user.lng 14 ●●●● patch | view | raw | blame | history
interface/web/sites/lib/lang/de_shell_user.lng 2 ●●●●● patch | view | raw | blame | history
interface/web/sites/lib/lang/de_web_domain.lng 1 ●●●● patch | view | raw | blame | history
interface/web/sites/lib/lang/el_shell_user.lng 2 ●●●●● patch | view | raw | blame | history
interface/web/sites/lib/lang/el_web_domain.lng 1 ●●●● patch | view | raw | blame | history
interface/web/sites/lib/lang/en_shell_user.lng 2 ●●●●● patch | view | raw | blame | history
interface/web/sites/lib/lang/en_web_domain.lng 1 ●●●● patch | view | raw | blame | history
interface/web/sites/lib/lang/es_shell_user.lng 2 ●●●●● patch | view | raw | blame | history
interface/web/sites/lib/lang/es_web_domain.lng 1 ●●●● patch | view | raw | blame | history
interface/web/sites/lib/lang/fi_shell_user.lng 2 ●●●●● patch | view | raw | blame | history
interface/web/sites/lib/lang/fi_web_domain.lng 1 ●●●● patch | view | raw | blame | history
interface/web/sites/lib/lang/fr_shell_user.lng 2 ●●●●● patch | view | raw | blame | history
interface/web/sites/lib/lang/fr_web_domain.lng 1 ●●●● patch | view | raw | blame | history
interface/web/sites/lib/lang/hr_shell_user.lng 2 ●●●●● patch | view | raw | blame | history
interface/web/sites/lib/lang/hr_web_domain.lng 1 ●●●● patch | view | raw | blame | history
interface/web/sites/lib/lang/hu_shell_user.lng 2 ●●●●● patch | view | raw | blame | history
interface/web/sites/lib/lang/hu_web_domain.lng 1 ●●●● patch | view | raw | blame | history
interface/web/sites/lib/lang/id_shell_user.lng 2 ●●●●● patch | view | raw | blame | history
interface/web/sites/lib/lang/id_web_domain.lng 1 ●●●● patch | view | raw | blame | history
interface/web/sites/lib/lang/it_shell_user.lng 2 ●●●●● patch | view | raw | blame | history
interface/web/sites/lib/lang/it_web_domain.lng 1 ●●●● patch | view | raw | blame | history
interface/web/sites/lib/lang/ja_shell_user.lng 2 ●●●●● patch | view | raw | blame | history
interface/web/sites/lib/lang/ja_web_domain.lng 1 ●●●● patch | view | raw | blame | history
interface/web/sites/lib/lang/nl_shell_user.lng 2 ●●●●● patch | view | raw | blame | history
interface/web/sites/lib/lang/nl_web_domain.lng 1 ●●●● patch | view | raw | blame | history
interface/web/sites/lib/lang/pl_shell_user.lng 2 ●●●●● patch | view | raw | blame | history
interface/web/sites/lib/lang/pl_web_domain.lng 1 ●●●● patch | view | raw | blame | history
interface/web/sites/lib/lang/pt_shell_user.lng 2 ●●●●● patch | view | raw | blame | history
interface/web/sites/lib/lang/pt_web_domain.lng 1 ●●●● patch | view | raw | blame | history
interface/web/sites/lib/lang/ro_shell_user.lng 2 ●●●●● patch | view | raw | blame | history
interface/web/sites/lib/lang/ro_web_domain.lng 1 ●●●● patch | view | raw | blame | history
interface/web/sites/lib/lang/ru_shell_user.lng 2 ●●●●● patch | view | raw | blame | history
interface/web/sites/lib/lang/ru_web_domain.lng 1 ●●●● patch | view | raw | blame | history
interface/web/sites/lib/lang/se.lng 2 ●●● patch | view | raw | blame | history
interface/web/sites/lib/lang/se_aps.lng 16 ●●●● patch | view | raw | blame | history
interface/web/sites/lib/lang/se_shell_user.lng 2 ●●●●● patch | view | raw | blame | history
interface/web/sites/lib/lang/se_web_domain.lng 1 ●●●● patch | view | raw | blame | history
interface/web/sites/lib/lang/se_web_subdomain.lng 2 ●●● patch | view | raw | blame | history
interface/web/sites/lib/lang/sk_shell_user.lng 2 ●●●●● patch | view | raw | blame | history
interface/web/sites/lib/lang/sk_web_domain.lng 1 ●●●● patch | view | raw | blame | history
interface/web/sites/lib/lang/tr_shell_user.lng 2 ●●●●● patch | view | raw | blame | history
interface/web/sites/lib/lang/tr_web_domain.lng 1 ●●●● patch | view | raw | blame | history
interface/web/sites/web_domain_edit.php 11 ●●●● patch | view | raw | blame | history
interface/web/themes/blue/ispconfig_version 2 ●●● patch | view | raw | blame | history
interface/web/themes/default-304/css/central.css 33 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/css/navigation/nav_side.css 125 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/css/navigation/nav_top.css 116 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/css/patches/central.css 37 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/css/print/print_100.css 31 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/css/screen/basemod.css 124 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/css/screen/basemod_2col_left_seo.css 48 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/css/screen/content.css 203 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/css/screen/content_ispc.css 1045 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/css/screen/jquery-ui-custom.css 7 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/css/screen/redmond/images/ui-bg_flat_0_aaaaaa_40x100.png patch | view | raw | blame | history
interface/web/themes/default-304/css/screen/redmond/images/ui-bg_flat_55_fbec88_40x100.png patch | view | raw | blame | history
interface/web/themes/default-304/css/screen/redmond/images/ui-bg_glass_75_d0e5f5_1x400.png patch | view | raw | blame | history
interface/web/themes/default-304/css/screen/redmond/images/ui-bg_glass_85_dfeffc_1x400.png patch | view | raw | blame | history
interface/web/themes/default-304/css/screen/redmond/images/ui-bg_glass_95_fef1ec_1x400.png patch | view | raw | blame | history
interface/web/themes/default-304/css/screen/redmond/images/ui-bg_gloss-wave_55_5c9ccc_500x100.png patch | view | raw | blame | history
interface/web/themes/default-304/css/screen/redmond/images/ui-bg_inset-hard_100_f5f8f9_1x100.png patch | view | raw | blame | history
interface/web/themes/default-304/css/screen/redmond/images/ui-bg_inset-hard_100_fcfdfd_1x100.png patch | view | raw | blame | history
interface/web/themes/default-304/css/screen/redmond/images/ui-icons_217bc0_256x240.png patch | view | raw | blame | history
interface/web/themes/default-304/css/screen/redmond/images/ui-icons_2e83ff_256x240.png patch | view | raw | blame | history
interface/web/themes/default-304/css/screen/redmond/images/ui-icons_469bdd_256x240.png patch | view | raw | blame | history
interface/web/themes/default-304/css/screen/redmond/images/ui-icons_6da8d5_256x240.png patch | view | raw | blame | history
interface/web/themes/default-304/css/screen/redmond/images/ui-icons_cd0a0a_256x240.png patch | view | raw | blame | history
interface/web/themes/default-304/css/screen/redmond/images/ui-icons_d8e7f3_256x240.png patch | view | raw | blame | history
interface/web/themes/default-304/css/screen/redmond/images/ui-icons_f9bd01_256x240.png patch | view | raw | blame | history
interface/web/themes/default-304/css/screen/redmond/jquery-ui-1.8.16.custom.css 444 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/css/screen/tipsy.css 25 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/css/screen/uni-form-generic.css 136 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/css/screen/uni-form.css 131 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/icons/device_sprite.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/flags_sprite.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x12/accept.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x12/accept_blue.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x12/accept_green.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x12/arrow_2_left_round.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x12/arrow_2_right_round.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x12/arrow_left_blue_round.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x12/arrow_right_blue_round.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x12/article.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x12/article_text.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x12/bar_graph.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x12/burst.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x12/calendar.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x12/calendar2.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x12/cancel.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x12/cancel_round.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x12/clock.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x12/code.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x12/comment_blue.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x12/dollar.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x12/double_comment.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x12/download.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x12/envelope.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x12/flag_black.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x12/flag_blue.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x12/flag_green.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x12/flag_orange.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x12/flag_red.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x12/flag_yellow.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x12/folder.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x12/info.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x12/link.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x12/lock.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x12/magnify.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x12/minus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x12/minus_round.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x12/money.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x12/new.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x12/pencil.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x12/pictures.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x12/plus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x12/printer.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x12/question_blue.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x12/refresh.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x12/rss.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x12/rss_round.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x12/security_green.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x12/security_orange.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x12/security_red.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x12/star.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x12/star_blue.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x12/stop.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x12/stop_round.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x12/upload.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x12/world.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x12/world2.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16-list/accept.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16-list/accept_blue.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16-list/accept_green.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16-list/arrow_2_left_round.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16-list/arrow_2_right_round.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16-list/arrow_left_blue_round.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16-list/arrow_right_blue_round.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16-list/article.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16-list/article_text.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16-list/bar_graph.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16-list/burst.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16-list/calendar.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16-list/calendar2.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16-list/cancel.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16-list/cancel_round.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16-list/clock.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16-list/code.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16-list/comment_blue.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16-list/dollar.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16-list/double_comment.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16-list/download.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16-list/envelope.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16-list/flag_black.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16-list/flag_blue.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16-list/flag_green.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16-list/flag_orange.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16-list/flag_red.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16-list/flag_yellow.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16-list/folder.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16-list/info.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16-list/link.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16-list/lock.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16-list/magnify.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16-list/minus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16-list/minus_round.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16-list/money.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16-list/new.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16-list/pencil.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16-list/pictures.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16-list/plus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16-list/printer.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16-list/question_blue.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16-list/refresh.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16-list/rss.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16-list/rss_round.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16-list/security_green.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16-list/security_orange.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16-list/security_red.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16-list/star.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16-list/star_blue.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16-list/stop.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16-list/stop_round.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16-list/upload.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16-list/world.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16-list/world2.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/address_book.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/address_book__arrow.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/address_book__exclamation.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/address_book__minus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/address_book__pencil.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/address_book__plus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/address_book_blue.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/arrow.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/arrow_000_small.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/arrow_045.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/arrow_045_small.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/arrow_090.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/arrow_090_small.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/arrow_135.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/arrow_135_small.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/arrow_180.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/arrow_180_small.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/arrow_225.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/arrow_225_small.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/arrow_270.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/arrow_270_small.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/arrow_315.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/arrow_315_small.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/arrow_circle.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/arrow_circle_135.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/arrow_circle_225.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/arrow_circle_315.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/arrow_circle_double.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/arrow_circle_double_135.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/arrow_skip.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/arrow_skip_090.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/arrow_skip_180.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/arrow_skip_270.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/arrow_stop.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/arrow_stop_090.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/arrow_stop_180.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/arrow_stop_270.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/auction_hammer.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/auction_hammer__arrow.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/auction_hammer__exclamation.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/auction_hammer__minus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/auction_hammer__pencil.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/auction_hammer__plus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/auction_hammer_gavel.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/balloon.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/balloon__arrow.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/balloon__exclamation.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/balloon__minus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/balloon__pencil.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/balloon__plus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/balloon_left.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/balloon_small.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/balloon_small_left.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/balloons.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/balloons_arrow.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/balloons_exclamation.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/balloons_minus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/balloons_pencil.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/balloons_plus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/bandaid.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/bandaid_arrow.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/bandaid_exclamation.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/bandaid_minus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/bandaid_pencil.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/bandaid_plus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/bandaid_small.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/bank.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/bank_arrow.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/bank_exclamation.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/bank_minus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/bank_pencil.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/bank_plus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/bell.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/bell__arrow.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/bell__exclamation.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/bell__minus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/bell__pencil.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/bell__plus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/bell_disable.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/bin.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/bin__arrow.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/bin__exclamation.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/bin__minus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/bin__pencil.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/bin__plus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/bin_full.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/binocular.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/binocular_arrow.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/binocular_exclamation.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/binocular_minus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/binocular_pencil.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/binocular_plus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/blog.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/blog__arrow.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/blog__exclamation.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/blog__minus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/blog__pencil.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/blog__plus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/blog_blue.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/blogs.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/blogs_arrow.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/blogs_exclamation.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/blogs_minus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/blogs_pencil.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/blogs_plus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/blogs_stack.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/book.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/book__arrow.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/book__exclamation.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/book__minus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/book__pencil.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/book__plus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/book_brown.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/book_small.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/book_small_brown.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/bookmark.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/bookmark__arrow.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/bookmark__exclamation.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/bookmark__minus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/bookmark__pencil.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/bookmark__plus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/bookmark__small.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/bookmark_book.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/bookmark_book_arrow.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/bookmark_book_exclamation.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/bookmark_book_minus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/bookmark_book_pencil.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/bookmark_book_plus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/bookmark_document.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/bookmark_document_arrow.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/bookmark_document_exclamation.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/bookmark_document_minus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/bookmark_document_pencil.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/bookmark_document_plus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/bookmark_folder.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/bookmark_folder_arrow.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/bookmark_folder_exclamation.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/bookmark_folder_minus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/bookmark_folder_pencil.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/bookmark_folder_plus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/books.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/books__arrow.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/books__exclamation.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/books__minus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/books__pencil.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/books__plus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/books_brown.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/books_stack.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/box.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/box__arrow.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/box__exclamation.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/box__minus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/box__pencil.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/box__plus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/box_label.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/briefcase.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/briefcase_arrow.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/briefcase_exclamation.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/briefcase_minus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/briefcase_pencil.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/briefcase_plus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/broom.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/broom_arrow.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/broom_exclamation.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/broom_minus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/broom_pencil.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/broom_plus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/calculator.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/calculator_arrow.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/calculator_exclamation.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/calculator_minus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/calculator_pencil.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/calculator_plus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/calendar.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/calendar__arrow.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/calendar__exclamation.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/calendar__minus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/calendar__pencil.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/calendar__plus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/calendar_day.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/calendar_month.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/camera.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/camera__arrow.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/camera__exclamation.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/camera__minus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/camera__pencil.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/camera__plus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/camera_black.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/camera_small.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/camera_small_black.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/card.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/card__arrow.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/card__exclamation.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/card__minus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/card__pencil.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/card__plus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/card_address.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/card_small.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/cards.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/cards__arrow.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/cards__exclamation.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/cards__minus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/cards__pencil.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/cards__plus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/cards_address.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/cards_stack.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/cassette.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/cassette_arrow.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/cassette_exclamation.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/cassette_minus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/cassette_pencil.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/cassette_plus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/cassette_small.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/chain.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/chain_arrow.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/chain_exclamation.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/chain_minus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/chain_pencil.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/chain_plus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/chain_small.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/chain_unchain.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/clipboard.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/clipboard__arrow.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/clipboard__exclamation.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/clipboard__minus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/clipboard__pencil.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/clipboard__plus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/clipboard_empty.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/clipboard_text.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/clock.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/clock__arrow.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/clock__exclamation.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/clock__minus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/clock__pencil.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/clock__plus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/clock_fill.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/clock_frame.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/clock_small.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/color.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/color_arrow.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/color_exclamation.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/color_minus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/color_pencil.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/color_plus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/color_small.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/contrast.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/contrast__arrow.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/contrast__exclamation.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/contrast__minus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/contrast__pencil.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/contrast__plus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/contrast_low.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/contrast_small.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/contrast_small_low.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/cross.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/cross_circle.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/cross_circle_frame.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/cross_shield.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/cross_small.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/cross_small_circle.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/crown.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/crown__arrow.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/crown__exclamation.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/crown__minus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/crown__pencil.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/crown__plus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/crown_bronze.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/crown_silver.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/database.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/database_arrow.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/database_exclamation.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/database_minus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/database_pencil.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/database_plus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/database_small.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/databases.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/databases_arrow.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/databases_exclamation.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/databases_minus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/databases_pencil.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/databases_plus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/disc.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/disc_arrow.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/disc_exclamation.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/disc_minus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/disc_pencil.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/disc_plus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/disc_small.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/discs.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/discs_arrow.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/discs_exclamation.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/discs_minus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/discs_pencil.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/discs_plus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/disk.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/disk__arrow.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/disk__exclamation.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/disk__minus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/disk__pencil.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/disk__plus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/disk_black.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/disk_small.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/disk_small_black.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/disks.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/disks__arrow.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/disks__exclamation.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/disks__minus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/disks__pencil.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/disks__plus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/disks_black.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/document.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/document__arrow.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/document__exclamation.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/document__minus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/document__pencil.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/document__plus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/document_horizontal.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/document_horizontal_text.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/document_music.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/document_music_playlist.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/document_shred.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/document_small.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/document_text.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/document_text_image.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/document_zipper.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/documents.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/documents_arrow.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/documents_exclamation.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/documents_minus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/documents_pencil.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/documents_plus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/documents_stack.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/documents_text.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/door.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/door_arrow.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/door_exclamation.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/door_minus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/door_pencil.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/door_plus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/drawer.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/drawer_arrow.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/drawer_exclamation.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/drawer_minus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/drawer_pencil.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/drawer_plus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/drill.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/drill_arrow.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/drill_exclamation.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/drill_minus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/drill_pencil.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/drill_plus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/envelope.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/envelope_arrow.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/envelope_exclamation.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/envelope_minus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/envelope_pencil.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/envelope_plus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/equalizer.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/equalizer_arrow.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/equalizer_exclamation.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/equalizer_minus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/equalizer_pencil.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/equalizer_plus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/eraser.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/eraser_arrow.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/eraser_exclamation.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/eraser_minus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/eraser_pencil.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/eraser_plus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/exclamation.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/exclamation_frame.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/exclamation_shield.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/exclamation_small.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/feed.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/feed__arrow.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/feed__exclamation.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/feed__minus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/feed__pencil.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/feed__plus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/feed_balloon.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/feed_small.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/film.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/film_arrow.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/film_exclamation.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/film_minus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/film_pencil.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/film_plus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/film_small.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/films.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/films_arrow.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/films_exclamation.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/films_minus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/films_pencil.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/films_plus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/flag.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/flag_arrow.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/flag_exclamation.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/flag_minus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/flag_pencil.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/flag_plus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/folder.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/folder__arrow.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/folder__exclamation.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/folder__minus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/folder__pencil.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/folder__plus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/folder_open.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/folder_open_document.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/folder_open_document_music.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/folder_open_document_music_playlist.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/folder_open_document_text.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/folder_open_film.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/folder_open_image.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/folder_shred.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/folder_small.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/folder_zipper.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/folders.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/folders_arrow.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/folders_exclamation.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/folders_minus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/folders_pencil.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/folders_plus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/folders_stack.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/funnel.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/funnel_arrow.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/funnel_exclamation.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/funnel_minus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/funnel_pencil.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/funnel_plus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/funnel_small.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/gear.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/gear__arrow.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/gear__exclamation.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/gear__minus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/gear__pencil.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/gear__plus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/gear_disable.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/gear_small.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/hammer.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/hammer__arrow.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/hammer__exclamation.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/hammer__minus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/hammer__pencil.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/hammer__plus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/hammer_left.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/hammer_screwdriver.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/heart.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/heart__arrow.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/heart__exclamation.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/heart__minus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/heart__pencil.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/heart__plus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/heart_break.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/heart_empty.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/heart_half.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/heart_small.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/heart_small_empty.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/heart_small_half.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/home.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/home_arrow.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/home_exclamation.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/home_minus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/home_pencil.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/home_plus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/home_small.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/image.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/image_arrow.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/image_exclamation.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/image_minus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/image_pencil.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/image_plus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/image_resize.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/image_resize_actual.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/image_small.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/image_small_sunset.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/image_sunset.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/images.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/images_arrow.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/images_exclamation.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/images_minus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/images_pencil.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/images_plus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/images_stack.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/inbox.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/inbox_arrow.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/inbox_exclamation.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/inbox_minus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/inbox_pencil.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/inbox_plus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/information.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/information_frame.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/information_shield.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/information_small.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/key.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/key__arrow.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/key__exclamation.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/key__minus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/key__pencil.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/key__plus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/key_disable.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/layout.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/layout_2.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/layout_2_equal.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/layout_3.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/layout_3_mix.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/layout_header.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/layout_header_2.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/layout_header_2_equal.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/layout_header_3.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/layout_header_3_mix.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/layout_header_footer.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/layout_header_footer_2.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/layout_header_footer_2_equal.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/layout_header_footer_3.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/layout_header_footer_3_mix.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/layout_join.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/layout_split.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/lifebuoy.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/lifebuoy_arrow.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/lifebuoy_exclamation.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/lifebuoy_minus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/lifebuoy_pencil.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/lifebuoy_plus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/light_bulb.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/light_bulb__arrow.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/light_bulb__exclamation.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/light_bulb__minus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/light_bulb__pencil.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/light_bulb__plus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/light_bulb_off.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/light_bulb_small.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/light_bulb_small_off.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/lightning.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/lightning__arrow.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/lightning__exclamation.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/lightning__minus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/lightning__pencil.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/lightning__plus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/lightning_disable.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/lightning_small.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/loading.gif patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/lock.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/lock__arrow.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/lock__exclamation.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/lock__minus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/lock__pencil.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/lock__plus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/lock_disable.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/lock_small.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/lock_unlock.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/logout.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/magnet.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/magnet__arrow.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/magnet__exclamation.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/magnet__minus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/magnet__pencil.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/magnet__plus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/magnet_disable.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/magnet_small.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/magnifier.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/magnifier__arrow.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/magnifier__exclamation.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/magnifier__minus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/magnifier__pencil.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/magnifier__plus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/magnifier_left.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/magnifier_medium.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/magnifier_medium_left.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/magnifier_small.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/magnifier_zoom.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/magnifier_zoom_actual.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/magnifier_zoom_fit.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/magnifier_zoom_out.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/mail.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/mail__arrow.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/mail__exclamation.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/mail__minus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/mail__pencil.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/mail__plus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/mail_open.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/mail_open_document.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/mail_open_film.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/mail_open_image.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/mail_small.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/mails.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/mails_arrow.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/mails_exclamation.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/mails_minus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/mails_pencil.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/mails_plus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/mails_stack.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/media_player.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/media_player__arrow.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/media_player__exclamation.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/media_player__minus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/media_player__pencil.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/media_player__plus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/media_player_black.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/media_player_medium.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/media_player_medium_black.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/media_player_medium_blue.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/media_player_medium_green.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/media_player_medium_pink.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/media_player_medium_red.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/media_player_small.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/media_player_small_blue.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/media_player_small_green.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/media_player_small_purple.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/media_player_small_red.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/media_players.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/media_players_arrow.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/media_players_exclamation.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/media_players_minus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/media_players_pencil.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/media_players_plus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/microphone.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/microphone_arrow.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/microphone_exclamation.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/microphone_minus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/microphone_pencil.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/microphone_plus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/minus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/minus_circle.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/minus_circle_frame.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/minus_shield.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/minus_small.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/minus_small_circle.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/music.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/music_arrow.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/music_exclamation.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/music_minus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/music_pencil.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/music_plus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/music_small.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/newspaper.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/newspaper_arrow.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/newspaper_exclamation.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/newspaper_minus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/newspaper_pencil.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/newspaper_plus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/newspapers.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/newspapers_arrow.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/newspapers_exclamation.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/newspapers_minus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/newspapers_pencil.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/newspapers_plus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/notebook.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/notebook_arrow.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/notebook_exclamation.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/notebook_minus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/notebook_pencil.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/notebook_plus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/notebooks.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/notebooks_arrow.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/notebooks_exclamation.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/notebooks_minus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/notebooks_pencil.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/notebooks_plus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/paint_can.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/paint_can_arrow.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/paint_can_exclamation.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/paint_can_minus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/paint_can_pencil.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/paint_can_plus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/palette.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/palette_arrow.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/palette_exclamation.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/palette_minus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/palette_pencil.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/palette_plus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/paper_bag.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/paper_bag_arrow.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/paper_bag_exclamation.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/paper_bag_minus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/paper_bag_pencil.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/paper_bag_plus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/pdf.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/pencil.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/pencil_arrow.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/pencil_exclamation.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/pencil_minus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/pencil_plus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/pencil_small.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/photo_album.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/photo_album__arrow.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/photo_album__exclamation.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/photo_album__minus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/photo_album__pencil.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/photo_album__plus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/photo_album_blue.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/piano.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/piano_arrow.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/piano_exclamation.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/piano_minus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/piano_pencil.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/piano_plus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/picture.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/picture_arrow.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/picture_exclamation.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/picture_minus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/picture_pencil.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/picture_plus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/picture_small.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/picture_small_sunset.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/picture_sunset.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/pictures.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/pictures_arrow.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/pictures_exclamation.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/pictures_minus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/pictures_pencil.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/pictures_plus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/pill.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/pill_arrow.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/pill_exclamation.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/pill_minus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/pill_pencil.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/pill_plus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/pill_small.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/pin.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/pin_arrow.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/pin_exclamation.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/pin_minus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/pin_pencil.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/pin_plus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/pipette.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/pipette_arrow.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/pipette_exclamation.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/pipette_minus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/pipette_pencil.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/pipette_plus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/playing_card.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/playing_card_arrow.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/playing_card_exclamation.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/playing_card_minus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/playing_card_pencil.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/playing_card_plus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/plug.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/plug_arrow.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/plug_exclamation.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/plug_minus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/plug_pencil.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/plug_plus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/plus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/plus_circle.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/plus_circle_frame.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/plus_shield.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/plus_small.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/plus_small_circle.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/printer.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/printer__arrow.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/printer__exclamation.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/printer__minus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/printer__pencil.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/printer__plus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/printer_empty.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/printer_small.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/puzzle.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/puzzle__arrow.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/puzzle__exclamation.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/puzzle__minus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/puzzle__pencil.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/puzzle__plus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/puzzle_disable.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/question.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/question_frame.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/question_shield.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/question_small.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/receipt.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/receipt_arrow.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/receipt_exclamation.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/receipt_minus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/receipt_pencil.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/receipt_plus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/receipt_shred.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/receipt_text.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/receipts.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/receipts_arrow.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/receipts_exclamation.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/receipts_minus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/receipts_pencil.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/receipts_plus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/receipts_text.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/report.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/report_arrow.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/report_exclamation.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/report_minus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/report_pencil.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/report_plus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/ruler.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/ruler__arrow.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/ruler__exclamation.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/ruler__minus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/ruler__pencil.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/ruler__plus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/ruler_crop.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/safe.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/safe_arrow.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/safe_exclamation.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/safe_minus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/safe_pencil.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/safe_plus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/screwdriver.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/screwdriver_arrow.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/screwdriver_exclamation.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/screwdriver_minus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/screwdriver_pencil.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/screwdriver_plus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/script.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/script__arrow.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/script__exclamation.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/script__minus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/script__pencil.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/script__plus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/script_code.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/scripts.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/scripts__arrow.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/scripts__exclamation.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/scripts__minus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/scripts__pencil.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/scripts__plus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/scripts_code.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/shield.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/shield__arrow.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/shield__exclamation.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/shield__minus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/shield__pencil.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/shield__plus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/shield_disable.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/slash.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/slash_small.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/socket.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/socket_arrow.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/socket_exclamation.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/socket_minus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/socket_pencil.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/socket_plus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/sort.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/sort__arrow.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/sort__exclamation.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/sort__minus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/sort__pencil.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/sort__plus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/sort_alphabet.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/sort_alphabet_descending.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/sort_date.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/sort_date_descending.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/sort_number.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/sort_number_descending.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/sort_quantity.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/sort_quantity_descending.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/sort_small.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/stamp.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/stamp_arrow.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/stamp_exclamation.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/stamp_minus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/stamp_pencil.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/stamp_plus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/star.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/star__arrow.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/star__exclamation.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/star__minus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/star__pencil.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/star__plus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/star_empty.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/star_half.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/star_small.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/star_small_empty.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/star_small_half.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/sticky_note.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/sticky_note__arrow.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/sticky_note__exclamation.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/sticky_note__minus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/sticky_note__pencil.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/sticky_note__plus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/sticky_note_pin.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/sticky_note_shred.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/sticky_note_small.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/sticky_note_small_pin.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/sticky_note_text.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/sticky_notes.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/sticky_notes__arrow.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/sticky_notes__exclamation.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/sticky_notes__minus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/sticky_notes__pencil.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/sticky_notes__plus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/sticky_notes_pin.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/sticky_notes_stack.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/sticky_notes_text.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/switch.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/switch_arrow.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/switch_exclamation.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/switch_minus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/switch_pencil.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/switch_plus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/table.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/table__arrow.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/table__exclamation.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/table__minus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/table__pencil.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/table__plus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/table_delete.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/table_delete_column.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/table_insert.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/table_insert_column.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/tables.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/tables_arrow.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/tables_exclamation.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/tables_minus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/tables_pencil.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/tables_plus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/tables_stacks.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/tag.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/tag__arrow.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/tag__exclamation.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/tag__minus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/tag__pencil.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/tag__plus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/tag_label.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/tag_small.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/tags.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/tags__arrow.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/tags__exclamation.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/tags__minus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/tags__pencil.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/tags__plus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/tags_label.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/tick.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/tick_circle.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/tick_circle_frame.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/tick_shield.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/tick_small.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/tick_small_circle.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/ticket.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/ticket_arrow.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/ticket_exclamation.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/ticket_minus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/ticket_pencil.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/ticket_plus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/ticket_small.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/trophy.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/trophy_arrow.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/trophy_exclamation.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/trophy_minus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/trophy_pencil.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/trophy_plus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/tux.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/user.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/user_add.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/user_comment.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/user_delete.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/user_edit.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/user_female.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/user_go.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/user_gray.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/user_green.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/user_orange.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/user_red.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/user_suit.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/vcard.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/vcard_add.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/vcard_delete.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/vcard_edit.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/wall.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/wall__arrow.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/wall__exclamation.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/wall__minus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/wall__pencil.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/wall__plus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/wall_brick.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/wall_disable.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/wall_small.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/wall_small_brick.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/wallet.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/wallet_arrow.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/wallet_exclamation.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/wallet_minus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/wallet_pencil.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/wallet_plus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/wand.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/wand_arrow.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/wand_exclamation.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/wand_minus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/wand_pencil.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/wand_plus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/wrench.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/wrench_arrow.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/wrench_exclamation.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/wrench_minus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/wrench_pencil.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/wrench_plus.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16/wrench_screwdriver.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x16_sprite.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x32/calculator.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x32/client.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x32/dashboard.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x32/dns.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x32/domain.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x32/drawer.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x32/email.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x32/help.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x32/login.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x32/monitor.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x32/network.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x32/server.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x32/sites.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x32/state_critical.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x32/state_error.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x32/state_info.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x32/state_ok.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x32/state_unknown.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x32/state_warning.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x32/system.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x32/tools.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x32_sprite.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x64/client.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x64/dashboard.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x64/dns.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x64/domain.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x64/drawer.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x64/email.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x64/help.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x64/login.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x64/monitor.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x64/network.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x64/server.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x64/sites.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x64/system.png patch | view | raw | blame | history
interface/web/themes/default-304/icons/x64/tools.png patch | view | raw | blame | history
interface/web/themes/default-304/images/Thumbs.db patch | view | raw | blame | history
interface/web/themes/default-304/images/ajax-loader.gif patch | view | raw | blame | history
interface/web/themes/default-304/images/buttonHolder_bg.gif patch | view | raw | blame | history
interface/web/themes/default-304/images/chevron.png patch | view | raw | blame | history
interface/web/themes/default-304/images/favicon.ico patch | view | raw | blame | history
interface/web/themes/default-304/images/header_bg.png patch | view | raw | blame | history
interface/web/themes/default-304/images/header_logo.png patch | view | raw | blame | history
interface/web/themes/default-304/images/lists_tfoot_bg.png patch | view | raw | blame | history
interface/web/themes/default-304/images/lists_thead_bg.png patch | view | raw | blame | history
interface/web/themes/default-304/images/meter_bg.gif patch | view | raw | blame | history
interface/web/themes/default-304/images/screen_bg.png patch | view | raw | blame | history
interface/web/themes/default-304/ispconfig_version 1 ●●●● patch | view | raw | blame | history
interface/web/themes/default-304/licences.txt 8 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/admin/firewall_edit.htm 38 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/admin/firewall_list.htm 60 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/admin/groups_edit.htm 26 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/admin/groups_list.htm 54 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/admin/iptables_edit.htm 67 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/admin/iptables_list.htm 73 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/admin/language_add.htm 29 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/admin/language_complete.htm 29 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/admin/language_edit.htm 29 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/admin/language_export.htm 31 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/admin/language_import.htm 44 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/admin/language_list.htm 47 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/admin/remote_action_ispcupdate.htm 33 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/admin/remote_action_osupdate.htm 25 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/admin/remote_user_edit.htm 47 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/admin/remote_user_list.htm 52 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/admin/server_config_cron_edit.htm 30 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/admin/server_config_dns_edit.htm 38 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/admin/server_config_fastcgi_edit.htm 52 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/admin/server_config_getmail_edit.htm 22 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/admin/server_config_jailkit_edit.htm 34 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/admin/server_config_list.htm 40 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/admin/server_config_mail_edit.htm 94 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/admin/server_config_rescue_edit.htm 44 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/admin/server_config_server_edit.htm 67 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/admin/server_config_ufw_edit.htm 66 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/admin/server_config_vlogger_edit.htm 22 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/admin/server_config_web_edit.htm 256 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/admin/server_edit_config.htm 22 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/admin/server_edit_services.htm 70 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/admin/server_ip_edit.htm 50 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/admin/server_ip_list.htm 64 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/admin/server_list.htm 58 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/admin/server_php_fastcgi_edit.htm 26 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/admin/server_php_fpm_edit.htm 30 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/admin/server_php_list.htm 55 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/admin/server_php_name_edit.htm 34 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/admin/software_package_install.htm 30 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/admin/software_package_list.htm 46 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/admin/software_repo_edit.htm 40 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/admin/software_repo_list.htm 56 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/admin/software_update_list.htm 49 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/admin/system_config_domains_edit.htm 33 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/admin/system_config_mail_edit.htm 80 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/admin/system_config_misc_edit.htm 38 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/admin/system_config_sites_edit.htm 58 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/admin/tpl_default_basic.htm 23 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/admin/users_groups_edit.htm 30 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/admin/users_list.htm 68 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/admin/users_user_edit.htm 73 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/client/client_circle_edit.htm 39 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/client/client_circle_list.htm 59 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/client/client_del.htm 25 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/client/client_edit_address.htm 140 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/client/client_edit_limits.htm 284 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/client/client_message.htm 39 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/client/client_template_edit_limits.htm 230 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/client/client_template_edit_template.htm 28 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/client/client_template_list.htm 56 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/client/clients_list.htm 73 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/client/domain_edit.htm 40 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/client/domain_list.htm 62 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/client/reseller_edit_address.htm 116 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/client/reseller_edit_limits.htm 279 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/client/resellers_list.htm 68 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/dashboard/custom_menu.htm 9 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/dashboard/dashboard.htm 48 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/dashboard/dashlets/limits.htm 11 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/dashboard/dashlets/modules.htm 10 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/designer/form_edit.htm 79 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/designer/form_list.htm 24 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/designer/form_show.htm 61 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/designer/module_edit.htm 43 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/designer/module_list.htm 18 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/designer/module_nav_edit.htm 24 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/designer/module_nav_item_edit.htm 33 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/designer/module_show.htm 31 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/designer/paging.tpl.htm 9 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/dns/dns_a_edit.htm 54 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/dns/dns_a_list.htm 88 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/dns/dns_aaaa_edit.htm 54 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/dns/dns_alias_edit.htm 38 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/dns/dns_cname_edit.htm 38 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/dns/dns_hinfo_edit.htm 38 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/dns/dns_import.htm 55 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/dns/dns_mx_edit.htm 42 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/dns/dns_ns_edit.htm 38 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/dns/dns_ptr_edit.htm 38 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/dns/dns_records_edit.htm 12 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/dns/dns_rp_edit.htm 38 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/dns/dns_slave_edit.htm 97 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/dns/dns_slave_list.htm 59 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/dns/dns_soa_edit.htm 131 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/dns/dns_soa_list.htm 62 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/dns/dns_srv_edit.htm 50 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/dns/dns_template_edit.htm 38 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/dns/dns_template_list.htm 53 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/dns/dns_txt_edit.htm 38 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/dns/dns_wizard.htm 95 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/error.tpl.htm 8 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/form.tpl.htm 1 ●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/help/faq_edit.htm 29 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/help/faq_manage_questions_list.htm 43 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/help/faq_sections_edit.htm 20 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/help/help_faq_list.htm 19 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/help/help_faq_sections_list.htm 43 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/help/support_message_edit.htm 33 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/help/support_message_list.htm 53 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/help/support_message_view.htm 22 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/listpage.tpl.htm 1 ●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/login/index.htm 33 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/login/password_reset.htm 33 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/mail/mail_alias_edit.htm 39 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/mail/mail_alias_list.htm 56 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/mail/mail_aliasdomain_edit.htm 37 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/mail/mail_aliasdomain_list.htm 56 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/mail/mail_blacklist_edit.htm 41 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/mail/mail_blacklist_list.htm 59 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/mail/mail_content_filter_edit.htm 50 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/mail/mail_content_filter_list.htm 59 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/mail/mail_domain_admin_list.htm 58 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/mail/mail_domain_catchall_edit.htm 36 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/mail/mail_domain_catchall_list.htm 56 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/mail/mail_domain_edit.htm 73 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/mail/mail_domain_list.htm 56 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/mail/mail_forward_edit.htm 37 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/mail/mail_forward_list.htm 56 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/mail/mail_get_edit.htm 60 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/mail/mail_get_list.htm 62 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/mail/mail_mailinglist_edit.htm 86 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/mail/mail_mailinglist_list.htm 53 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/mail/mail_relay_recipient_edit.htm 35 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/mail/mail_relay_recipient_list.htm 55 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/mail/mail_transport_edit.htm 56 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/mail/mail_transport_list.htm 62 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/mail/mail_user_autoresponder_edit.htm 44 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/mail/mail_user_custom_rules_edit.htm 22 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/mail/mail_user_filter_edit.htm 38 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/mail/mail_user_filter_list.htm 44 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/mail/mail_user_list.htm 66 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/mail/mail_user_mailbox_edit.htm 81 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/mail/mail_user_mailfilter_edit.htm 26 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/mail/mail_user_stats_list.htm 53 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/mail/mail_whitelist_edit.htm 41 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/mail/mail_whitelist_list.htm 59 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/mail/spamfilter_blacklist_edit.htm 49 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/mail/spamfilter_blacklist_list.htm 62 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/mail/spamfilter_config_getmail_edit.htm 22 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/mail/spamfilter_config_list.htm 51 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/mail/spamfilter_config_mail_edit.htm 66 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/mail/spamfilter_config_server_edit.htm 38 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/mail/spamfilter_other_edit.htm 80 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/mail/spamfilter_policy_edit.htm 64 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/mail/spamfilter_policy_list.htm 63 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/mail/spamfilter_quarantine_edit.htm 44 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/mail/spamfilter_taglevel_edit.htm 52 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/mail/spamfilter_users_edit.htm 50 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/mail/spamfilter_users_list.htm 62 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/mail/spamfilter_whitelist_edit.htm 49 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/mail/spamfilter_whitelist_list.htm 63 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/mail/user_quota_stats_list.htm 52 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/mailuser/index.htm 34 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/mailuser/mail_user_autoresponder_edit.htm 37 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/mailuser/mail_user_cc_edit.htm 26 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/mailuser/mail_user_filter_edit.htm 38 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/mailuser/mail_user_filter_list.htm 50 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/mailuser/mail_user_password_edit.htm 37 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/mailuser/mail_user_spamfilter_edit.htm 28 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/main.tpl.htm 188 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/module.tpl.htm 41 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/module_tree.tpl.htm 42 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/monitor/datalog_list.htm 49 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/monitor/show_data.htm 12 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/monitor/show_log.htm 25 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/monitor/show_sys_state.htm 25 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/monitor/syslog_list.htm 56 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/sidenav.tpl.htm 24 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/sites/aps_install_package.htm 56 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/sites/aps_instances_list.htm 62 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/sites/aps_packagedetails_show.htm 139 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/sites/aps_packages_list.htm 50 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/sites/cron_edit.htm 68 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/sites/cron_list.htm 74 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/sites/database_admin_list.htm 68 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/sites/database_edit.htm 113 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/sites/database_list.htm 66 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/sites/database_user_admin_list.htm 50 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/sites/database_user_edit.htm 54 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/sites/database_user_list.htm 51 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/sites/ftp_user_advanced.htm 50 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/sites/ftp_user_advanced_client.htm 22 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/sites/ftp_user_edit.htm 54 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/sites/ftp_user_list.htm 62 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/sites/shell_user_advanced.htm 34 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/sites/shell_user_edit.htm 72 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/sites/shell_user_list.htm 59 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/sites/user_quota_stats_list.htm 54 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/sites/web_aliasdomain_edit.htm 125 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/sites/web_aliasdomain_list.htm 59 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/sites/web_backup_list.htm 41 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/sites/web_domain_admin_list.htm 61 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/sites/web_domain_advanced.htm 146 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/sites/web_domain_backup.htm 32 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/sites/web_domain_edit.htm 249 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/sites/web_domain_list.htm 59 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/sites/web_domain_redirect.htm 76 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/sites/web_domain_ssl.htm 68 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/sites/web_domain_stats.htm 37 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/sites/web_folder_edit.htm 34 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/sites/web_folder_list.htm 58 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/sites/web_folder_user_edit.htm 49 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/sites/web_folder_user_list.htm 55 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/sites/web_sites_stats_list.htm 62 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/sites/web_subdomain_edit.htm 112 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/sites/web_subdomain_list.htm 60 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/sites/web_vhost_subdomain_advanced.htm 146 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/sites/web_vhost_subdomain_backup.htm 32 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/sites/web_vhost_subdomain_edit.htm 208 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/sites/web_vhost_subdomain_list.htm 60 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/sites/web_vhost_subdomain_redirect.htm 76 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/sites/web_vhost_subdomain_ssl.htm 68 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/sites/web_vhost_subdomain_stats.htm 37 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/sites/webdav_user_edit.htm 64 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/sites/webdav_user_list.htm 59 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/tabbed_form.tpl.htm 27 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/tools/dns_import_tupa.htm 56 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/tools/import_ispconfig.htm 103 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/tools/import_plesk.htm 74 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/tools/index.htm 20 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/tools/interface_settings.htm 31 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/tools/resync.htm 67 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/tools/tpl_default.htm 37 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/tools/user_settings.htm 39 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/topnav.tpl.htm 9 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/vm/openvz_action.htm 53 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/vm/openvz_ip_edit.htm 46 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/vm/openvz_ip_list.htm 58 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/vm/openvz_ostemplate_edit.htm 48 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/vm/openvz_ostemplate_list.htm 61 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/vm/openvz_template_advanced_edit.htm 110 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/vm/openvz_template_edit.htm 74 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/vm/openvz_template_list.htm 52 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/vm/openvz_vm_advanced_edit.htm 64 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/vm/openvz_vm_edit.htm 107 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/templates/vm/openvz_vm_list.htm 68 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/yaml/!important.txt 4 ●●●● patch | view | raw | blame | history
interface/web/themes/default-304/yaml/core/base.css 229 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/yaml/core/iehacks.css 310 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/yaml/core/print_base.css 120 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/yaml/core/slim_base.css 50 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/yaml/core/slim_iehacks.css 36 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/yaml/core/slim_print_base.css 21 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/yaml/debug/debug.css 157 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/yaml/debug/images/grid_pattern.png patch | view | raw | blame | history
interface/web/themes/default-304/yaml/debug/images/warning_iehacks.gif patch | view | raw | blame | history
interface/web/themes/default-304/yaml/debug/images/yaml_debug.gif patch | view | raw | blame | history
interface/web/themes/default-304/yaml/navigation/nav_vlist.css 109 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/yaml/patches/patch_layout_draft.css 29 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/yaml/patches/patch_nav_vlist.css 61 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/yaml/print/print_003_draft.css 32 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/yaml/print/print_020_draft.css 31 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/yaml/print/print_023_draft.css 40 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/yaml/print/print_100_draft.css 31 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/yaml/print/print_103_draft.css 38 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/yaml/print/print_120_draft.css 39 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/yaml/print/print_123_draft.css 40 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/yaml/screen/basemod_draft.css 70 ●●●●● patch | view | raw | blame | history
interface/web/themes/default-304/yaml/screen/content_default.css 170 ●●●●● patch | view | raw | blame | history
interface/web/themes/default/templates/main.tpl.htm 4 ●●●● patch | view | raw | blame | history
interface/web/tools/user_settings.php 4 ●●●● patch | view | raw | blame | history
remoting_client/examples/sites_ftp_user_add.php 6 ●●●● patch | view | raw | blame | history
remoting_client/examples/sites_ftp_user_update.php 2 ●●● patch | view | raw | blame | history
remoting_client/examples/sites_shell_user_add.php 10 ●●●● patch | view | raw | blame | history
remoting_client/examples/sites_shell_user_update.php 2 ●●● patch | view | raw | blame | history
security/README.txt 96 ●●●●● patch | view | raw | blame | history
security/apache_directives.blacklist 3 ●●●●● patch | view | raw | blame | history
security/check.php 154 ●●●●● patch | view | raw | blame | history
security/data/empty.dir patch | view | raw | blame | history
security/ids.htmlfield 5 ●●●●● patch | view | raw | blame | history
security/ids.whitelist 45 ●●●●● patch | view | raw | blame | history
security/security_settings.ini 34 ●●●●● patch | view | raw | blame | history
server/lib/classes/getconf.inc.php 9 ●●●●● patch | view | raw | blame | history
server/plugins-available/maildeliver_plugin.inc.php 1 ●●●● patch | view | raw | blame | history
server/plugins-available/mailman_plugin.inc.php 9 ●●●●● patch | view | raw | blame | history
server/plugins-available/nginx_plugin.inc.php 8 ●●●● patch | view | raw | blame | history
server/plugins-available/shelluser_base_plugin.inc.php 83 ●●●● patch | view | raw | blame | history
server/plugins-available/shelluser_jailkit_plugin.inc.php 79 ●●●●● patch | view | raw | blame | history
server/scripts/ispconfig_htaccess.php 76 ●●●●● patch | view | raw | blame | history
server/server.sh 3 ●●●●● patch | view | raw | blame | history
install/dist/lib/fedora.lib.php
@@ -114,7 +114,7 @@
    function configure_postfix($options = '')
    {
        global $conf;
        global $conf,$autoinstall;
        $cf = $conf['postfix'];
        $config_dir = $cf['config_dir'];
@@ -832,6 +832,31 @@
        //* copy the ISPConfig server part
        $command = "cp -rf ../server $install_dir";
        caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command");
        //* Make a backup of the security settings
        if(is_file('/usr/local/ispconfig/security/security_settings.ini')) copy('/usr/local/ispconfig/security/security_settings.ini','/usr/local/ispconfig/security/security_settings.ini~');
        //* copy the ISPConfig security part
        $command = 'cp -rf ../security '.$install_dir;
        caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command");
        //* Apply changed security_settings.ini values to new security_settings.ini file
        if(is_file('/usr/local/ispconfig/security/security_settings.ini~')) {
            $security_settings_old = ini_to_array(file_get_contents('/usr/local/ispconfig/security/security_settings.ini~'));
            $security_settings_new = ini_to_array(file_get_contents('/usr/local/ispconfig/security/security_settings.ini'));
            if(is_array($security_settings_new) && is_array($security_settings_old)) {
                foreach($security_settings_new as $section => $sval) {
                    if(is_array($sval)) {
                        foreach($sval as $key => $val) {
                            if(isset($security_settings_old[$section]) && isset($security_settings_old[$section][$key])) {
                                $security_settings_new[$section][$key] = $security_settings_old[$section][$key];
                            }
                        }
                    }
                }
                file_put_contents('/usr/local/ispconfig/security/security_settings.ini',array_to_ini($security_settings_new));
            }
        }
        //* Create a symlink, so ISPConfig is accessible via web
        // Replaced by a separate vhost definition for port 8080
@@ -958,12 +983,38 @@
            $this->db->query($sql);
        }
        //* Chmod the files
        $command = "chmod -R 750 $install_dir";
        // chown install dir to root and chmod 755
        $command = 'chown root:root '.$install_dir;
        caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command");
        $command = 'chmod 755 '.$install_dir;
        caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command");
        //* chown the files to the ispconfig user and group
        $command = "chown -R ispconfig:ispconfig $install_dir";
        //* Chmod the files and directories in the install dir
        $command = 'chmod -R 750 '.$install_dir.'/*';
        caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command");
        //* chown the interface files to the ispconfig user and group
        $command = 'chown -R ispconfig:ispconfig '.$install_dir.'/interface';
        caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command");
        //* chown the server files to the root user and group
        $command = 'chown -R root:root '.$install_dir.'/server';
        caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command");
        //* chown the security files to the root user and group
        $command = 'chown -R root:root '.$install_dir.'/security';
        caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command");
        //* chown the security directory and security_settings.ini to root:ispconfig
        $command = 'chown root:ispconfig '.$install_dir.'/security/security_settings.ini';
        caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command");
        $command = 'chown root:ispconfig '.$install_dir.'/security';
        caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command");
        $command = 'chown root:ispconfig '.$install_dir.'/security/ids.whitelist';
        caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command");
        $command = 'chown root:ispconfig '.$install_dir.'/security/ids.htmlfield';
        caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command");
        $command = 'chown root:ispconfig '.$install_dir.'/security/apache_directives.blacklist';
        caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command");
        //* Make the global language file directory group writable
install/dist/lib/gentoo.lib.php
@@ -49,7 +49,7 @@
    public function configure_postfix($options = '')
    {
        global $conf;
        global $conf,$autoinstall;
        $cf = $conf['postfix'];
        $config_dir = $cf['config_dir'];
@@ -126,6 +126,7 @@
                $command = 'cd '.$config_dir.'; '
                    .'openssl req -new -outform PEM -out smtpd.cert -newkey rsa:4096 -nodes -keyout smtpd.key -keyform PEM -days 3650 -x509';
            }
            exec($command);
            $command = 'chmod o= '.$config_dir.'/smtpd.key';
            caselog($command.' &> /dev/null', __FILE__, __LINE__, 'EXECUTED: '.$command, 'Failed to execute the command '.$command);
@@ -747,6 +748,31 @@
        //* copy the ISPConfig server part
        $command = "cp -rf ../server $install_dir";
        caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command");
        //* Make a backup of the security settings
        if(is_file('/usr/local/ispconfig/security/security_settings.ini')) copy('/usr/local/ispconfig/security/security_settings.ini','/usr/local/ispconfig/security/security_settings.ini~');
        //* copy the ISPConfig security part
        $command = 'cp -rf ../security '.$install_dir;
        caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command");
        //* Apply changed security_settings.ini values to new security_settings.ini file
        if(is_file('/usr/local/ispconfig/security/security_settings.ini~')) {
            $security_settings_old = ini_to_array(file_get_contents('/usr/local/ispconfig/security/security_settings.ini~'));
            $security_settings_new = ini_to_array(file_get_contents('/usr/local/ispconfig/security/security_settings.ini'));
            if(is_array($security_settings_new) && is_array($security_settings_old)) {
                foreach($security_settings_new as $section => $sval) {
                    if(is_array($sval)) {
                        foreach($sval as $key => $val) {
                            if(isset($security_settings_old[$section]) && isset($security_settings_old[$section][$key])) {
                                $security_settings_new[$section][$key] = $security_settings_old[$section][$key];
                            }
                        }
                    }
                }
                file_put_contents('/usr/local/ispconfig/security/security_settings.ini',array_to_ini($security_settings_new));
            }
        }
        //* Create the config file for ISPConfig interface
@@ -850,12 +876,38 @@
            $this->db->query($sql);
        }
        //* Chmod the files
        $command = "chmod -R 750 $install_dir";
        // chown install dir to root and chmod 755
        $command = 'chown root:root '.$install_dir;
        caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command");
        $command = 'chmod 755 '.$install_dir;
        caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command");
        //* chown the files to the ispconfig user and group
        $command = "chown -R ispconfig:ispconfig $install_dir";
        //* Chmod the files and directories in the install dir
        $command = 'chmod -R 750 '.$install_dir.'/*';
        caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command");
        //* chown the interface files to the ispconfig user and group
        $command = 'chown -R ispconfig:ispconfig '.$install_dir.'/interface';
        caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command");
        //* chown the server files to the root user and group
        $command = 'chown -R root:root '.$install_dir.'/server';
        caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command");
        //* chown the security files to the root user and group
        $command = 'chown -R root:root '.$install_dir.'/security';
        caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command");
        //* chown the security directory and security_settings.ini to root:ispconfig
        $command = 'chown root:ispconfig '.$install_dir.'/security/security_settings.ini';
        caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command");
        $command = 'chown root:ispconfig '.$install_dir.'/security';
        caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command");
        $command = 'chown root:ispconfig '.$install_dir.'/security/ids.whitelist';
        caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command");
        $command = 'chown root:ispconfig '.$install_dir.'/security/ids.htmlfield';
        caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command");
        $command = 'chown root:ispconfig '.$install_dir.'/security/apache_directives.blacklist';
        caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command");
        //* Make the global language file directory group writable
install/dist/lib/opensuse.lib.php
@@ -130,7 +130,7 @@
    function configure_postfix($options = '')
    {
        global $conf;
        global $conf,$autoinstall;
        $cf = $conf['postfix'];
        $config_dir = $cf['config_dir'];
@@ -264,6 +264,7 @@
                $command = 'cd '.$config_dir.'; '
                    .'openssl req -new -outform PEM -out smtpd.cert -newkey rsa:4096 -nodes -keyout smtpd.key -keyform PEM -days 3650 -x509';
            }
            exec($command);
            $command = 'chmod o= '.$config_dir.'/smtpd.key';
            caselog($command.' &> /dev/null', __FILE__, __LINE__, 'EXECUTED: '.$command, 'Failed to execute the command '.$command);
@@ -903,6 +904,31 @@
        //* copy the ISPConfig server part
        $command = "cp -rf ../server $install_dir";
        caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command");
        //* Make a backup of the security settings
        if(is_file('/usr/local/ispconfig/security/security_settings.ini')) copy('/usr/local/ispconfig/security/security_settings.ini','/usr/local/ispconfig/security/security_settings.ini~');
        //* copy the ISPConfig security part
        $command = 'cp -rf ../security '.$install_dir;
        caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command");
        //* Apply changed security_settings.ini values to new security_settings.ini file
        if(is_file('/usr/local/ispconfig/security/security_settings.ini~')) {
            $security_settings_old = ini_to_array(file_get_contents('/usr/local/ispconfig/security/security_settings.ini~'));
            $security_settings_new = ini_to_array(file_get_contents('/usr/local/ispconfig/security/security_settings.ini'));
            if(is_array($security_settings_new) && is_array($security_settings_old)) {
                foreach($security_settings_new as $section => $sval) {
                    if(is_array($sval)) {
                        foreach($sval as $key => $val) {
                            if(isset($security_settings_old[$section]) && isset($security_settings_old[$section][$key])) {
                                $security_settings_new[$section][$key] = $security_settings_old[$section][$key];
                            }
                        }
                    }
                }
                file_put_contents('/usr/local/ispconfig/security/security_settings.ini',array_to_ini($security_settings_new));
            }
        }
        //* Create a symlink, so ISPConfig is accessible via web
        // Replaced by a separate vhost definition for port 8080
@@ -1028,12 +1054,38 @@
            $this->db->query($sql);
        }
        //* Chmod the files
        $command = "chmod -R 750 $install_dir";
        // chown install dir to root and chmod 755
        $command = 'chown root:root '.$install_dir;
        caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command");
        $command = 'chmod 755 '.$install_dir;
        caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command");
        //* chown the files to the ispconfig user and group
        $command = "chown -R ispconfig:ispconfig $install_dir";
        //* Chmod the files and directories in the install dir
        $command = 'chmod -R 750 '.$install_dir.'/*';
        caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command");
        //* chown the interface files to the ispconfig user and group
        $command = 'chown -R ispconfig:ispconfig '.$install_dir.'/interface';
        caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command");
        //* chown the server files to the root user and group
        $command = 'chown -R root:root '.$install_dir.'/server';
        caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command");
        //* chown the security files to the root user and group
        $command = 'chown -R root:root '.$install_dir.'/security';
        caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command");
        //* chown the security directory and security_settings.ini to root:ispconfig
        $command = 'chown root:ispconfig '.$install_dir.'/security/security_settings.ini';
        caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command");
        $command = 'chown root:ispconfig '.$install_dir.'/security';
        caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command");
        $command = 'chown root:ispconfig '.$install_dir.'/security/ids.whitelist';
        caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command");
        $command = 'chown root:ispconfig '.$install_dir.'/security/ids.htmlfield';
        caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command");
        $command = 'chown root:ispconfig '.$install_dir.'/security/apache_directives.blacklist';
        caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command");
        //* Make the global language file directory group writable
install/install.php
@@ -679,6 +679,11 @@
} //* << $install_mode / 'Standard' or Genius
//* Create md5 filelist
$md5_filename = '/usr/local/ispconfig/security/data/file_checksums_'.date('Y-m-d_h-i').'.md5';
exec('find /usr/local/ispconfig -type f -print0 | xargs -0 md5sum > '.$md5_filename);
chmod($md5_filename,0700);
echo "Installation completed.\n";
install/lib/installer_base.lib.php
@@ -646,7 +646,7 @@
                copy('tpl/mailman-virtual_to_transport.sh', $full_file_name);
            }
            chgrp($full_file_name, 'list');
            chmod($full_file_name, 0750);
            chmod($full_file_name, 0755);
        }
        //* Create aliasaes
@@ -1744,6 +1744,31 @@
        //* copy the ISPConfig server part
        $command = 'cp -rf ../server '.$install_dir;
        caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command");
        //* Make a backup of the security settings
        if(is_file('/usr/local/ispconfig/security/security_settings.ini')) copy('/usr/local/ispconfig/security/security_settings.ini','/usr/local/ispconfig/security/security_settings.ini~');
        //* copy the ISPConfig security part
        $command = 'cp -rf ../security '.$install_dir;
        caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command");
        //* Apply changed security_settings.ini values to new security_settings.ini file
        if(is_file('/usr/local/ispconfig/security/security_settings.ini~')) {
            $security_settings_old = ini_to_array(file_get_contents('/usr/local/ispconfig/security/security_settings.ini~'));
            $security_settings_new = ini_to_array(file_get_contents('/usr/local/ispconfig/security/security_settings.ini'));
            if(is_array($security_settings_new) && is_array($security_settings_old)) {
                foreach($security_settings_new as $section => $sval) {
                    if(is_array($sval)) {
                        foreach($sval as $key => $val) {
                            if(isset($security_settings_old[$section]) && isset($security_settings_old[$section][$key])) {
                                $security_settings_new[$section][$key] = $security_settings_old[$section][$key];
                            }
                        }
                    }
                }
                file_put_contents('/usr/local/ispconfig/security/security_settings.ini',array_to_ini($security_settings_new));
            }
        }
        //* Create a symlink, so ISPConfig is accessible via web
        // Replaced by a separate vhost definition for port 8080
@@ -1885,12 +1910,38 @@
        }
        //* Chmod the files
        $command = 'chmod -R 750 '.$install_dir;
        // chown install dir to root and chmod 755
        $command = 'chown root:root '.$install_dir;
        caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command");
        $command = 'chmod 755 '.$install_dir;
        caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command");
        //* chown the files to the ispconfig user and group
        $command = 'chown -R ispconfig:ispconfig '.$install_dir;
        //* Chmod the files and directories in the install dir
        $command = 'chmod -R 750 '.$install_dir.'/*';
        caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command");
        //* chown the interface files to the ispconfig user and group
        $command = 'chown -R ispconfig:ispconfig '.$install_dir.'/interface';
        caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command");
        //* chown the server files to the root user and group
        $command = 'chown -R root:root '.$install_dir.'/server';
        caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command");
        //* chown the security files to the root user and group
        $command = 'chown -R root:root '.$install_dir.'/security';
        caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command");
        //* chown the security directory and security_settings.ini to root:ispconfig
        $command = 'chown root:ispconfig '.$install_dir.'/security/security_settings.ini';
        caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command");
        $command = 'chown root:ispconfig '.$install_dir.'/security';
        caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command");
        $command = 'chown root:ispconfig '.$install_dir.'/security/ids.whitelist';
        caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command");
        $command = 'chown root:ispconfig '.$install_dir.'/security/ids.htmlfield';
        caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command");
        $command = 'chown root:ispconfig '.$install_dir.'/security/apache_directives.blacklist';
        caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command");
        //* Make the global language file directory group writable
@@ -2142,7 +2193,7 @@
        
        // Add symlink for patch tool
        if(!is_link('/usr/local/bin/ispconfig_patch')) exec('ln -s /usr/local/ispconfig/server/scripts/ispconfig_patch /usr/local/bin/ispconfig_patch');
    }
    public function configure_dbserver() {
@@ -2231,6 +2282,22 @@
        chmod($conf['ispconfig_log_dir'].'/cron.log', 0660);
    }
    // This function is called at the end of the update process and contains code to clean up parts of old ISPCONfig releases
    public function cleanup_ispconfig() {
        global $app,$conf;
        // Remove directories recursively
        if(is_dir('/usr/local/ispconfig/interface/web/designer')) exec('rm -rf /usr/local/ispconfig/interface/web/designer');
        if(is_dir('/usr/local/ispconfig/interface/web/themes/default-304')) exec('rm -rf /usr/local/ispconfig/interface/web/themes/default-304');
        // Remove files
        if(is_file('/usr/local/ispconfig/interface/lib/classes/db_firebird.inc.php')) unlink('/usr/local/ispconfig/interface/lib/classes/db_firebird.inc.php');
        if(is_file('/usr/local/ispconfig/interface/lib/classes/form.inc.php')) unlink('/usr/local/ispconfig/interface/lib/classes/form.inc.php');
    }
    public function getinitcommand($servicename, $action, $init_script_directory = ''){
        global $conf;
install/sql/ispconfig3.sql
@@ -2292,7 +2292,7 @@
-- Dumping data for table `sys_config`
--
INSERT INTO sys_config VALUES ('db','db_version','3.0.5.4p2');
INSERT INTO sys_config VALUES ('db','db_version','3.0.5.4p3');
INSERT INTO sys_config VALUES ('interface','session_timeout','0');
SET FOREIGN_KEY_CHECKS = 1;
install/tpl/apache_ispconfig_fcgi_starter.master
@@ -3,4 +3,4 @@
export PHPRC
export PHP_FCGI_MAX_REQUESTS=5000
export PHP_FCGI_CHILDREN=1
exec {fastcgi_bin} -d magic_quotes_gpc=off -d session.save_path=/usr/local/ispconfig/server/temp
exec {fastcgi_bin} -d magic_quotes_gpc=off -d session.save_path=/usr/local/ispconfig/interface/temp
install/tpl/config.inc.php.master
@@ -56,7 +56,7 @@
//** Application
define('ISPC_APP_TITLE', 'ISPConfig');
define('ISPC_APP_VERSION', '3.0.5.4p2');
define('ISPC_APP_VERSION', '3.0.5.4p3');
define('DEVSYSTEM', 0);
install/tpl/php_fpm_pool.conf.master
@@ -17,5 +17,5 @@
chdir = /
; php_admin_value[open_basedir] = /usr/local/ispconfig/interface:/usr/share
php_admin_value[session.save_path] = /usr/local/ispconfig/server/temp
php_admin_value[session.save_path] = /usr/local/ispconfig/interface/temp
php_admin_flag[magic_quotes_gpc] = off
install/update.php
@@ -443,6 +443,9 @@
$inst->install_ispconfig();
// Cleanup
$inst->cleanup_ispconfig();
//** Configure Crontab
$update_crontab_answer = $inst->simple_query('Reconfigure Crontab?', array('yes', 'no'), 'yes','reconfigure_crontab');
if($update_crontab_answer == 'yes') {
@@ -494,6 +497,11 @@
    }
}
//* Create md5 filelist
$md5_filename = '/usr/local/ispconfig/security/data/file_checksums_'.date('Y-m-d_h-i').'.md5';
exec('find /usr/local/ispconfig -type f -print0 | xargs -0 md5sum > '.$md5_filename);
chmod($md5_filename,0700);
echo "Update finished.\n";
?>
interface/lib/app.inc.php
@@ -48,6 +48,7 @@
    private $_wb;
    private $_loaded_classes = array();
    private $_conf;
    private $_security_config;
    
    public $loaded_plugins = array();
@@ -109,7 +110,8 @@
        }
        $this->uses('functions'); // we need this before all others!
        $this->uses('auth,plugin');
        $this->uses('auth,plugin,ini_parser,getconf');
    }
    public function __get($prop) {
@@ -327,4 +329,13 @@
//* possible future =  new app($conf);
$app = new app();
// load and enable PHP Intrusion Detection System (PHPIDS)
$ids_security_config = $app->getconf->get_security_config('ids');
if(is_dir(ISPC_CLASS_PATH.'/IDS') && $ids_security_config['ids_enabled'] == 'yes') {
    $app->uses('ids');
    $app->ids->start();
}
unset($ids_security_config);
?>
interface/lib/classes/IDS/.htaccess
New file
@@ -0,0 +1,5 @@
# in case PHPIDS is placed in the web-root
deny from all
# silence is golden
php_flag display_errors off
interface/lib/classes/IDS/Caching/ApcCache.php
New file
@@ -0,0 +1,144 @@
<?php
/**
 * PHPIDS
 *
 * Requirements: PHP5, SimpleXML
 *
 * Copyright (c) 2008 PHPIDS group (https://phpids.org)
 *
 * PHPIDS is free software; you can redistribute it and/or modify
 * it under the terms of the GNU Lesser General Public License as published by
 * the Free Software Foundation, version 3 of the License, or
 * (at your option) any later version.
 *
 * PHPIDS 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 Lesser General Public License for more details.
 *
 * You should have received a copy of the GNU Lesser General Public License
 * along with PHPIDS. If not, see <http://www.gnu.org/licenses/>.
 *
 * PHP version 5.1.6+
 *
 * @category Security
 * @package  PHPIDS
 * @author   Mario Heiderich <mario.heiderich@gmail.com>
 * @author   Christian Matthies <ch0012@gmail.com>
 * @author   Lars Strojny <lars@strojny.net>
 * @license  http://www.gnu.org/licenses/lgpl.html LGPL
 * @link     http://php-ids.org/
 */
namespace IDS\Caching;
/**
 * APC caching wrapper
 *
 * This class inhabits functionality to get and set cache via memcached.
 *
 * @category  Security
 * @package   PHPIDS
 * @author    Yves Berkholz <godzilla80@gmx.net>
 * @copyright 2007-2009 The PHPIDS Groupoup
 * @license   http://www.gnu.org/licenses/lgpl.html LGPL
 * @link      http://php-ids.org/
 * @since     Version 0.6.5
 */
class ApcCache implements CacheInterface
{
    /**
     * Caching type
     *
     * @var string
     */
    private $type = null;
    /**
     * Cache configuration
     *
     * @var array
     */
    private $config = null;
    /**
     * Flag if the filter storage has been found in memcached
     *
     * @var boolean
     */
    private $isCached = false;
    /**
     * Holds an instance of this class
     *
     * @var object
     */
    private static $cachingInstance = null;
    /**
     * Constructor
     *
     * @param string $type caching type
     * @param array  $init the IDS_Init object
     *
     * @return void
     */
    public function __construct($type, $init)
    {
        $this->type   = $type;
        $this->config = $init->config['Caching'];
    }
    /**
     * Returns an instance of this class
     *
     * @param string $type caching type
     * @param object $init the IDS_Init object
     *
     * @return object $this
     */
    public static function getInstance($type, $init)
    {
        if (!self::$cachingInstance) {
            self::$cachingInstance = new ApcCache($type, $init);
        }
        return self::$cachingInstance;
    }
    /**
     * Writes cache data
     *
     * @param array $data the caching data
     *
     * @return object $this
     */
    public function setCache(array $data)
    {
        if (!$this->isCached) {
            apc_store(
                $this->config['key_prefix'] . '.storage',
                $data,
                $this->config['expiration_time']
            );
        }
        return $this;
    }
    /**
     * Returns the cached data
     *
     * Note that this method returns false if either type or file cache is
     * not set
     *
     * @return mixed cache data or false
     */
    public function getCache()
    {
        $data = apc_fetch($this->config['key_prefix'] . '.storage');
        $this->isCached = !empty($data);
        return $data;
    }
}
interface/lib/classes/IDS/Caching/CacheFactory.php
New file
@@ -0,0 +1,85 @@
<?php
/**
 * PHPIDS
 *
 * Requirements: PHP5, SimpleXML
 *
 * Copyright (c) 2008 PHPIDS group (https://phpids.org)
 *
 * PHPIDS is free software; you can redistribute it and/or modify
 * it under the terms of the GNU Lesser General Public License as published by
 * the Free Software Foundation, version 3 of the License, or
 * (at your option) any later version.
 *
 * PHPIDS 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 Lesser General Public License for more details.
 *
 * You should have received a copy of the GNU Lesser General Public License
 * along with PHPIDS. If not, see <http://www.gnu.org/licenses/>.
 *
 * PHP version 5.1.6+
 *
 * @category Security
 * @package  PHPIDS
 * @author   Mario Heiderich <mario.heiderich@gmail.com>
 * @author   Christian Matthies <ch0012@gmail.com>
 * @author   Lars Strojny <lars@strojny.net>
 * @license  http://www.gnu.org/licenses/lgpl.html LGPL
 * @link     http://php-ids.org/
 */
namespace IDS\Caching;
/**
 * Caching factory
 *
 * This class is used as a factory to load the correct concrete caching
 * implementation.
 *
 * @category  Security
 * @package   PHPIDS
 * @author    Christian Matthies <ch0012@gmail.com>
 * @author    Mario Heiderich <mario.heiderich@gmail.com>
 * @author    Lars Strojny <lars@strojny.net>
 * @copyright 2007-2009 The PHPIDS Group
 * @license   http://www.gnu.org/licenses/lgpl.html LGPL
 * @link      http://php-ids.org/
 * @since     Version 0.4
 */
class CacheFactory
{
    /**
     * Factory method
     *
     * @param object $init the IDS_Init object
     * @param string $type the caching type
     *
     * @return object the caching facility
     */
    public static function factory($init, $type)
    {
        $object  = false;
        $wrapper = preg_replace(
            '/\W+/m',
            null,
            ucfirst($init->config['Caching']['caching'])
        );
        $class   = '\\IDS\\Caching\\' . $wrapper . 'Cache';
        $path    = dirname(__FILE__) . DIRECTORY_SEPARATOR . $wrapper . 'Cache.php';
        if (file_exists($path)) {
            include_once $path;
            if (class_exists($class)) {
                $object = call_user_func(
                    array('' . $class, 'getInstance'),
                    $type,
                    $init
                );
            }
        }
        return $object;
    }
}
interface/lib/classes/IDS/Caching/CacheInterface.php
New file
@@ -0,0 +1,64 @@
<?php
/**
 * PHPIDS
 *
 * Requirements: PHP5, SimpleXML
 *
 * Copyright (c) 2008 PHPIDS group (https://phpids.org)
 *
 * PHPIDS is free software; you can redistribute it and/or modify
 * it under the terms of the GNU Lesser General Public License as published by
 * the Free Software Foundation, version 3 of the License, or
 * (at your option) any later version.
 *
 * PHPIDS 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 Lesser General Public License for more details.
 *
 * You should have received a copy of the GNU Lesser General Public License
 * along with PHPIDS. If not, see <http://www.gnu.org/licenses/>.
 *
 * PHP version 5.1.6+
 *
 * @category Security
 * @package  PHPIDS
 * @author   Mario Heiderich <mario.heiderich@gmail.com>
 * @author   Christian Matthies <ch0012@gmail.com>
 * @author   Lars Strojny <lars@strojny.net>
 * @license  http://www.gnu.org/licenses/lgpl.html LGPL
 * @link     http://php-ids.org/
 */
namespace IDS\Caching;
/**
 * Caching wrapper interface
 *
 * @category  Security
 * @package   PHPIDS
 * @author    Christian Matthies <ch0012@gmail.com>
 * @author    Mario Heiderich <mario.heiderich@gmail.com>
 * @author    Lars Strojny <lars@strojny.net>
 * @copyright 2007-2009 The PHPIDS Group
 * @license   http://www.gnu.org/licenses/lgpl.html LGPL
 * @since     Version 0.4
 * @link      http://php-ids.org/
 */
interface CacheInterface
{
    /**
     * Interface method
     *
     * @param array $data the cache data
     *
     * @return void
     */
    public function setCache(array $data);
    /**
     * Interface method
     *
     * @return void
     */
    public function getCache();
}
interface/lib/classes/IDS/Caching/DatabaseCache.php
New file
@@ -0,0 +1,277 @@
<?php
/**
 * PHPIDS
 *
 * Requirements: PHP5, SimpleXML
 *
 * Copyright (c) 2008 PHPIDS group (https://phpids.org)
 *
 * PHPIDS is free software; you can redistribute it and/or modify
 * it under the terms of the GNU Lesser General Public License as published by
 * the Free Software Foundation, version 3 of the License, or
 * (at your option) any later version.
 *
 * PHPIDS 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 Lesser General Public License for more details.
 *
 * You should have received a copy of the GNU Lesser General Public License
 * along with PHPIDS. If not, see <http://www.gnu.org/licenses/>.
 *
 * PHP version 5.1.6+
 *
 * @category Security
 * @package  PHPIDS
 * @author   Mario Heiderich <mario.heiderich@gmail.com>
 * @author   Christian Matthies <ch0012@gmail.com>
 * @author   Lars Strojny <lars@strojny.net>
 * @license  http://www.gnu.org/licenses/lgpl.html LGPL
 * @link     http://php-ids.org/
 */
namespace IDS\Caching;
/**
 *
 */
/**
 * Database caching wrapper
 *
 * This class inhabits functionality to get and set cache via a database.
 *
 * Needed SQL:
 *
#create the database
CREATE DATABASE IF NOT EXISTS `phpids` DEFAULT CHARACTER
SET utf8 COLLATE utf8_general_ci;
DROP TABLE IF EXISTS `cache`;
#now select the created datbase and create the table
CREATE TABLE `cache` (
`type` VARCHAR( 32 ) NOT null ,
`data` TEXT NOT null ,
`created` DATETIME NOT null ,
`modified` DATETIME NOT null
) ENGINE = MYISAM ;
 *
 * @category  Security
 * @package   PHPIDS
 * @author    Christian Matthies <ch0012@gmail.com>
 * @author    Mario Heiderich <mario.heiderich@gmail.com>
 * @author    Lars Strojny <lars@strojny.net>
 * @copyright 2007-2009 The PHPIDS Groupup
 * @license   http://www.gnu.org/licenses/lgpl.html LGPL
 * @link      http://php-ids.org/
 * @since     Version 0.4
 */
class DatabaseCache implements CacheInterface
{
    /**
     * Caching type
     *
     * @var string
     */
    private $type = null;
    /**
     * Cache configuration
     *
     * @var array
     */
    private $config = null;
    /**
     * DBH
     *
     * @var object
     */
    private $handle = null;
    /**
     * Holds an instance of this class
     *
     * @var object
     */
    private static $cachingInstance = null;
    /**
     * Constructor
     *
     * Connects to database.
     *
     * @param string $type caching type
     * @param object $init the IDS_Init object
     *
     * @return void
     */
    public function __construct($type, $init)
    {
        $this->type   = $type;
        $this->config = $init->config['Caching'];
        $this->handle = $this->connect();
    }
    /**
     * Returns an instance of this class
     *
     * @static
     * @param string $type caching type
     * @param object $init the IDS_Init object
     *
     * @return object $this
     */
    public static function getInstance($type, $init)
    {
        if (!self::$cachingInstance) {
            self::$cachingInstance = new DatabaseCache($type, $init);
        }
        return self::$cachingInstance;
    }
    /**
     * Writes cache data into the database
     *
     * @param array $data the caching data
     *
     * @throws PDOException if a db error occurred
     * @return object       $this
     */
    public function setCache(array $data)
    {
        $handle = $this->handle;
        $rows = $handle->query('SELECT created FROM `' . $this->config['table'].'`');
        if (!$rows || $rows->rowCount() === 0) {
            $this->write($handle, $data);
        } else {
            foreach ($rows as $row) {
                if ((time()-strtotime($row['created'])) >
                    $this->config['expiration_time']) {
                    $this->write($handle, $data);
                }
            }
        }
        return $this;
    }
    /**
     * Returns the cached data
     *
     * Note that this method returns false if either type or file cache is
     * not set
     *
     * @throws PDOException if a db error occurred
     * @return mixed        cache data or false
     */
    public function getCache()
    {
        try {
            $handle = $this->handle;
            $result = $handle->prepare(
                'SELECT * FROM `' .
                $this->config['table'] .
                '` where type=?'
            );
            $result->execute(array($this->type));
            foreach ($result as $row) {
                return unserialize($row['data']);
            }
        } catch (\PDOException $e) {
            throw new \PDOException('PDOException: ' . $e->getMessage());
        }
        return false;
    }
    /**
     * Connect to database and return a handle
     *
     * @return object       PDO
     * @throws Exception    if connection parameters are faulty
     * @throws PDOException if a db error occurred
     */
    private function connect()
    {
        // validate connection parameters
        if (!$this->config['wrapper']
            || !$this->config['user']
                || !$this->config['password']
                    || !$this->config['table']) {
            throw new \Exception('Insufficient connection parameters');
        }
        // try to connect
        try {
            $handle = new \PDO(
                $this->config['wrapper'],
                $this->config['user'],
                $this->config['password']
            );
            $handle->setAttribute(\PDO::MYSQL_ATTR_USE_BUFFERED_QUERY, true);
        } catch (\PDOException $e) {
            throw new \PDOException('PDOException: ' . $e->getMessage());
        }
        return $handle;
    }
    /**
     * Write the cache data to the table
     *
     * @param object $handle the database handle
     * @param array  $data   the caching data
     *
     * @return object       PDO
     * @throws PDOException if a db error occurred
     */
    private function write($handle, $data)
    {
        try {
            $handle->query('TRUNCATE ' . $this->config['table'].'');
            $statement = $handle->prepare(
                'INSERT INTO `' .
                $this->config['table'].'` (
                    type,
                    data,
                    created,
                    modified
                )
                VALUES (
                    :type,
                    :data,
                    now(),
                    now()
                )'
            );
            $statement->bindValue(
                'type',
                $handle->quote($this->type)
            );
            $statement->bindValue('data', serialize($data));
            if (!$statement->execute()) {
                throw new \PDOException($statement->errorCode());
            }
        } catch (\PDOException $e) {
            throw new \PDOException('PDOException: ' . $e->getMessage());
        }
    }
}
interface/lib/classes/IDS/Caching/FileCache.php
New file
@@ -0,0 +1,189 @@
<?php
/**
 * PHPIDS
 *
 * Requirements: PHP5, SimpleXML
 *
 * Copyright (c) 2008 PHPIDS group (https://phpids.org)
 *
 * PHPIDS is free software; you can redistribute it and/or modify
 * it under the terms of the GNU Lesser General Public License as published by
 * the Free Software Foundation, version 3 of the License, or
 * (at your option) any later version.
 *
 * PHPIDS 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 Lesser General Public License for more details.
 *
 * You should have received a copy of the GNU Lesser General Public License
 * along with PHPIDS. If not, see <http://www.gnu.org/licenses/>.
 *
 * PHP version 5.1.6+
 *
 * @category Security
 * @package  PHPIDS
 * @author   Mario Heiderich <mario.heiderich@gmail.com>
 * @author   Christian Matthies <ch0012@gmail.com>
 * @author   Lars Strojny <lars@strojny.net>
 * @license  http://www.gnu.org/licenses/lgpl.html LGPL
 * @link     http://php-ids.org/
 */
namespace IDS\Caching;
use IDS\Init;
/**
 * File caching wrapper
 *
 * This class inhabits functionality to get and set cache via a static flatfile.
 *
 * @category  Security
 * @package   PHPIDS
 * @author    Christian Matthies <ch0012@gmail.com>
 * @author    Mario Heiderich <mario.heiderich@gmail.com>
 * @author    Lars Strojny <lars@strojny.net>
 * @copyright 2007-2009 The PHPIDS Group
 * @license   http://www.gnu.org/licenses/lgpl.html LGPL
 * @link      http://php-ids.org/
 * @since     Version 0.4
 */
class FileCache implements CacheInterface
{
    /**
     * Caching type
     *
     * @var string
     */
    private $type;
    /**
     * Cache configuration
     *
     * @var array
     */
    private $config;
    /**
     * Path to cache file
     *
     * @var string
     */
    private $path;
    /**
     * Holds an instance of this class
     *
     * @var object
     */
    private static $cachingInstance;
    /**
     * Constructor
     *
     * @param string $type caching type
     * @param object $init the IDS_Init object
     * @throws \Exception
     *
     * @return void
     */
    public function __construct($type, Init $init)
    {
        $this->type   = $type;
        $this->config = $init->config['Caching'];
        $this->path   = $init->getBasePath() . $this->config['path'];
        if (file_exists($this->path) && !is_writable($this->path)) {
            throw new \Exception(
                'Make sure all files in ' .
                htmlspecialchars($this->path, ENT_QUOTES, 'UTF-8') .
                'are writeable!'
            );
        }
    }
    /**
     * Returns an instance of this class
     *
     * @param string $type caching type
     * @param object $init the IDS_Init object
     *
     * @return object $this
     */
    public static function getInstance($type, $init)
    {
        if (!self::$cachingInstance) {
            self::$cachingInstance = new FileCache($type, $init);
        }
        return self::$cachingInstance;
    }
    /**
     * Writes cache data into the file
     *
     * @param array $data the cache data
     *
     * @throws Exception if cache file couldn't be created
     * @return object    $this
     */
    public function setCache(array $data)
    {
        if (!is_writable(preg_replace('/[\/][^\/]+\.[^\/]++$/', null, $this->path))) {
            throw new \Exception(
                'Temp directory ' .
                htmlspecialchars($this->path, ENT_QUOTES, 'UTF-8') .
                ' seems not writable'
            );
        }
        if (!$this->isValidFile($this->path)) {
            $handle = @fopen($this->path, 'w+');
            if (!$handle) {
                throw new \Exception("Cache file couldn't be created");
            }
            $serialized = @serialize($data);
            if (!$serialized) {
                throw new \Exception("Cache data couldn't be serialized");
            }
            fwrite($handle, $serialized);
            fclose($handle);
        }
        return $this;
    }
    /**
     * Returns the cached data
     *
     * Note that this method returns false if either type or file cache is
     * not set
     *
     * @return mixed cache data or false
     */
    public function getCache()
    {
        // make sure filters are parsed again if cache expired
        if (!$this->isValidFile($this->path)) {
            return false;
        }
        $data = unserialize(file_get_contents($this->path));
        return $data;
    }
    /**
     * Returns true if the cache file is still valid
     *
     * @param  string $file
     * @return bool
     */
    private function isValidFile($file)
    {
        return file_exists($file) && time() - filectime($file) <= $this->config['expiration_time'];
    }
}
interface/lib/classes/IDS/Caching/MemcachedCache.php
New file
@@ -0,0 +1,181 @@
<?php
/**
 * PHPIDS
 *
 * Requirements: PHP5, SimpleXML
 *
 * Copyright (c) 2008 PHPIDS group (https://phpids.org)
 *
 * PHPIDS is free software; you can redistribute it and/or modify
 * it under the terms of the GNU Lesser General Public License as published by
 * the Free Software Foundation, version 3 of the License, or
 * (at your option) any later version.
 *
 * PHPIDS 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 Lesser General Public License for more details.
 *
 * You should have received a copy of the GNU Lesser General Public License
 * along with PHPIDS. If not, see <http://www.gnu.org/licenses/>.
 *
 * PHP version 5.1.6+
 *
 * @category Security
 * @package  PHPIDS
 * @author   Mario Heiderich <mario.heiderich@gmail.com>
 * @author   Christian Matthies <ch0012@gmail.com>
 * @author   Lars Strojny <lars@strojny.net>
 * @license  http://www.gnu.org/licenses/lgpl.html LGPL
 * @link     http://php-ids.org/
 */
namespace IDS\Caching;
/**
 * File caching wrapper
 *
 * This class inhabits functionality to get and set cache via memcached.
 *
 * @category  Security
 * @package   PHPIDS
 * @author    Christian Matthies <ch0012@gmail.com>
 * @author    Mario Heiderich <mario.heiderich@gmail.com>
 * @author    Lars Strojny <lars@strojny.net>
 * @copyright 2007-2009 The PHPIDS Groupoup
 * @license   http://www.gnu.org/licenses/lgpl.html LGPL
 * @link      http://php-ids.org/
 * @since     Version 0.4
 */
class MemcachedCache implements CacheInterface
{
    /**
     * Caching type
     *
     * @var string
     */
    private $type = null;
    /**
     * Cache configuration
     *
     * @var array
     */
    private $config = null;
    /**
     * Flag if the filter storage has been found in memcached
     *
     * @var boolean
     */
    private $isCached = false;
    /**
     * Memcache object
     *
     * @var object
     */
    private $memcache = null;
    /**
     * Holds an instance of this class
     *
     * @var object
     */
    private static $cachingInstance = null;
    /**
     * Constructor
     *
     * @param string $type caching type
     * @param array  $init the IDS_Init object
     *
     * @return void
     */
    public function __construct($type, $init)
    {
        $this->type   = $type;
        $this->config = $init->config['Caching'];
        $this->connect();
    }
    /**
     * Returns an instance of this class
     *
     * @param string $type caching type
     * @param object $init the IDS_Init object
     *
     * @return object $this
     */
    public static function getInstance($type, $init)
    {
        if (!self::$cachingInstance) {
            self::$cachingInstance = new MemcachedCache($type, $init);
        }
        return self::$cachingInstance;
    }
    /**
     * Writes cache data
     *
     * @param array $data the caching data
     *
     * @return object $this
     */
    public function setCache(array $data)
    {
        if (!$this->isCached) {
            $this->memcache->set(
                $this->config['key_prefix'] . '.storage',
                $data,
                false,
                $this->config['expiration_time']
            );
        }
        return $this;
    }
    /**
     * Returns the cached data
     *
     * Note that this method returns false if either type or file cache is
     * not set
     *
     * @return mixed cache data or false
     */
    public function getCache()
    {
        $data = $this->memcache->get(
            $this->config['key_prefix'] .
            '.storage'
        );
        $this->isCached = !empty($data);
        return $data;
    }
    /**
     * Connect to the memcached server
     *
     * @throws Exception if connection parameters are insufficient
     * @return void
     */
    private function connect()
    {
        if ($this->config['host'] && $this->config['port']) {
            // establish the memcache connection
            $this->memcache = new \Memcache;
            $this->memcache->pconnect(
                $this->config['host'],
                $this->config['port']
            );
        } else {
            throw new \Exception('Insufficient connection parameters');
        }
    }
}
interface/lib/classes/IDS/Caching/SessionCache.php
New file
@@ -0,0 +1,136 @@
<?php
/**
 * PHPIDS
 *
 * Requirements: PHP5, SimpleXML
 *
 * Copyright (c) 2008 PHPIDS group (https://phpids.org)
 *
 * PHPIDS is free software; you can redistribute it and/or modify
 * it under the terms of the GNU Lesser General Public License as published by
 * the Free Software Foundation, version 3 of the License, or
 * (at your option) any later version.
 *
 * PHPIDS 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 Lesser General Public License for more details.
 *
 * You should have received a copy of the GNU Lesser General Public License
 * along with PHPIDS. If not, see <http://www.gnu.org/licenses/>.
 *
 * PHP version 5.1.6+
 *
 * @category Security
 * @package  PHPIDS
 * @author   Mario Heiderich <mario.heiderich@gmail.com>
 * @author   Christian Matthies <ch0012@gmail.com>
 * @author   Lars Strojny <lars@strojny.net>
 * @license  http://www.gnu.org/licenses/lgpl.html LGPL
 * @link     http://php-ids.org/
 */
namespace IDS\Caching;
/**
 * File caching wrapper
 *
 * This class inhabits functionality to get and set cache via session.
 *
 * @category  Security
 * @package   PHPIDS
 * @author    Christian Matthies <ch0012@gmail.com>
 * @author    Mario Heiderich <mario.heiderich@gmail.com>
 * @author    Lars Strojny <lars@strojny.net>
 * @copyright 2007-2009 The PHPIDS Group
 * @license   http://www.gnu.org/licenses/lgpl.html LGPL
 * @link      http://php-ids.org/
 * @since     Version 0.4
 */
class SessionCache implements CacheInterface
{
    /**
     * Caching type
     *
     * @var string
     */
    private $type = null;
    /**
     * Cache configuration
     *
     * @var array
     */
    private $config = null;
    /**
     * Holds an instance of this class
     *
     * @var object
     */
    private static $cachingInstance = null;
    /**
     * Constructor
     *
     * @param string $type caching type
     * @param object $init the IDS_Init object
     *
     * @return void
     */
    public function __construct($type, $init)
    {
        $this->type   = $type;
        $this->config = $init->config['Caching'];
    }
    /**
     * Returns an instance of this class
     *
     * @param string $type caching type
     * @param object $init the IDS_Init object
     *
     * @return object $this
     */
    public static function getInstance($type, $init)
    {
        if (!self::$cachingInstance) {
            self::$cachingInstance = new SessionCache($type, $init);
        }
        return self::$cachingInstance;
    }
    /**
     * Writes cache data into the session
     *
     * @param array $data the caching data
     *
     * @return object $this
     */
    public function setCache(array $data)
    {
        $_SESSION['PHPIDS'][$this->type] = $data;
        return $this;
    }
    /**
     * Returns the cached data
     *
     * Note that this method returns false if either type or file cache is not set
     *
     * @return mixed cache data or false
     */
    public function getCache()
    {
        if ($this->type && $_SESSION['PHPIDS'][$this->type]) {
            return $_SESSION['PHPIDS'][$this->type];
        }
        return false;
    }
}
interface/lib/classes/IDS/Config.ini.php
New file
@@ -0,0 +1,59 @@
; <?php die(); ?>
; PHPIDS Config.ini
; General configuration settings
[General]
    ; basic settings - customize to make the PHPIDS work at all
    filter_type     = xml
    base_path       = /full/path/to/IDS/
    use_base_path   = false
    filter_path     = default_filter.xml
    tmp_path        = tmp
    scan_keys       = false
    ; in case you want to use a different HTMLPurifier source, specify it here
    ; By default, those files are used that are being shipped with PHPIDS
    HTML_Purifier_Cache = vendors/htmlpurifier/HTMLPurifier/DefinitionCache/Serializer
    ; define which fields contain html and need preparation before
    ; hitting the PHPIDS rules (new in PHPIDS 0.5)
    ;html[]          = POST.__wysiwyg
    ; define which fields contain JSON data and should be treated as such
    ; for fewer false positives (new in PHPIDS 0.5.3)
    ;json[]          = POST.__jsondata
    ; define which fields shouldn't be monitored (a[b]=c should be referenced via a.b)
    exceptions[]    = GET.__utmz
    exceptions[]    = GET.__utmc
    exceptions[]    = POST.maildir_path
    ; you can use regular expressions for wildcard exceptions - example: /.*foo/i
[Caching]
    ; caching:      session|file|database|memcached|apc|none
    caching         = file
    expiration_time = 600
    ; file cache
    path            = tmp/default_filter.cache
    ; database cache
    wrapper         = "mysql:host=localhost;port=3306;dbname=phpids"
    user            = phpids_user
    password        = 123456
    table           = cache
    ; memcached
    ;host           = localhost
    ;port           = 11211
    ;key_prefix     = PHPIDS
    ; apc
    ;key_prefix     = PHPIDS
interface/lib/classes/IDS/Config/Config.ini.php
New file
@@ -0,0 +1,91 @@
; <?php die(); ?>
; PHPIDS Config.ini
; General configuration settings
[General]
    ; basic settings - customize to make the PHPIDS work at all
    filter_type     = xml
    base_path       = /full/path/to/IDS/
    use_base_path   = false
    filter_path     = default_filter.xml
    tmp_path        = tmp
    scan_keys       = false
    ; in case you want to use a different HTMLPurifier source, specify it here
    ; By default, those files are used that are being shipped with PHPIDS
    HTML_Purifier_Cache = vendors/htmlpurifier/HTMLPurifier/DefinitionCache/Serializer
    ; define which fields contain html and need preparation before
    ; hitting the PHPIDS rules (new in PHPIDS 0.5)
    ;html[]          = POST.__wysiwyg
    ;html[]             = POST.records
    ;html[]             = REQUEST.records
    ; define which fields contain JSON data and should be treated as such
    ; for fewer false positives (new in PHPIDS 0.5.3)
    ;json[]          = POST.__jsondata
    ; define which fields shouldn't be monitored (a[b]=c should be referenced via a.b)
    ; exceptions[]    = GET.__utmz
    ; exceptions[]    = GET.__utmc
    ; exceptions[]    = POST.maildir_path
    ; exceptions[]    = REQUEST.maildir_path
    ; exceptions[]    = REQUEST.website_path
    ; exceptions[]    = REQUEST.website_symlinks
    ; exceptions[]    = REQUEST.vhost_conf_dir
    ; exceptions[]    = REQUEST.vhost_conf_enabled_dir
    ; exceptions[]    = REQUEST.nginx_vhost_conf_dir
    ; exceptions[]    = REQUEST.nginx_vhost_conf_enabled_dir
    ; exceptions[]    = REQUEST.php_open_basedir
    ; exceptions[]    = REQUEST.awstats_pl
    ; exceptions[]    = POST.website_path
    ; exceptions[]    = POST.website_symlinks
    ; exceptions[]    = POST.vhost_conf_dir
    ; exceptions[]    = POST.vhost_conf_enabled_dir
    ; exceptions[]    = POST.nginx_vhost_conf_dir
    ; exceptions[]    = POST.nginx_vhost_conf_enabled_dir
    ; exceptions[]    = POST.php_open_basedir
    ; exceptions[]    = POST.awstats_pl
    ; exceptions[]    = REQUEST.fastcgi_starter_path
    ; exceptions[]    = REQUEST.fastcgi_bin
    ; exceptions[]    = POST.fastcgi_starter_path
    ; exceptions[]    = POST.fastcgi_bin
    ; exceptions[]    = REQUEST.jailkit_chroot_home
    ; exceptions[]    = POST.jailkit_chroot_home
    ; exceptions[]    = REQUEST.phpmyadmin_url
    ; exceptions[]    = REQUEST.phpmyadmin_url
    ; exceptions[]    = REQUEST.records.weak_password_txt
    ; exceptions[]    = POST.records.weak_password_txt
    ; you can use regular expressions for wildcard exceptions - example: /.*foo/i
[Caching]
    ; caching:      session|file|database|memcached|apc|none
    caching         = file
    expiration_time = 600
    ; file cache
    path            = tmp/default_filter.cache
    ; database cache
    wrapper         = "mysql:host=localhost;port=3306;dbname=phpids"
    user            = phpids_user
    password        = 123456
    table           = cache
    ; memcached
    ;host           = localhost
    ;port           = 11211
    ;key_prefix     = PHPIDS
    ; apc
    ;key_prefix     = PHPIDS
interface/lib/classes/IDS/Converter.php
New file
@@ -0,0 +1,779 @@
<?php
/**
 * PHPIDS
 *
 * Requirements: PHP5, SimpleXML
 *
 * Copyright (c) 2008 PHPIDS group (https://phpids.org)
 *
 * PHPIDS is free software; you can redistribute it and/or modify
 * it under the terms of the GNU Lesser General Public License as published by
 * the Free Software Foundation, version 3 of the License, or
 * (at your option) any later version.
 *
 * PHPIDS 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 Lesser General Public License for more details.
 *
 * You should have received a copy of the GNU Lesser General Public License
 * along with PHPIDS. If not, see <http://www.gnu.org/licenses/>.
 *
 * PHP version 5.1.6+
 *
 * @category Security
 * @package  PHPIDS
 * @author   Mario Heiderich <mario.heiderich@gmail.com>
 * @author   Christian Matthies <ch0012@gmail.com>
 * @author   Lars Strojny <lars@strojny.net>
 * @license  http://www.gnu.org/licenses/lgpl.html LGPL
 * @link     http://php-ids.org/
 */
/**
 * PHPIDS specific utility class to convert charsets manually
 *
 * Note that if you make use of IDS_Converter::runAll(), existing class
 * methods will be executed in the same order as they are implemented in the
 * class tree!
 *
 * @category  Security
 * @package   PHPIDS
 * @author    Christian Matthies <ch0012@gmail.com>
 * @author    Mario Heiderich <mario.heiderich@gmail.com>
 * @author    Lars Strojny <lars@strojny.net>
 * @copyright 2007-2009 The PHPIDS Group
 * @license   http://www.gnu.org/licenses/lgpl.html LGPL
 * @link      http://php-ids.org/
 */
namespace IDS;
class Converter
{
    /**
     * Runs all converter functions
     *
     * Note that if you make use of IDS_Converter::runAll(), existing class
     * methods will be executed in the same order as they are implemented in the
     * class tree!
     *
     * @param string $value the value to convert
     *
     * @static
     * @return string
     */
    public static function runAll($value)
    {
        foreach (get_class_methods(__CLASS__) as $method) {
            if (strpos($method, 'run') !== 0) {
                $value = self::$method($value);
            }
        }
        return $value;
    }
    /**
     * Check for comments and erases them if available
     *
     * @param string $value the value to convert
     *
     * @static
     * @return string
     */
    public static function convertFromCommented($value)
    {
        // check for existing comments
        if (preg_match('/(?:\<!-|-->|\/\*|\*\/|\/\/\W*\w+\s*$)|(?:--[^-]*-)/ms', $value)) {
            $pattern = array(
                '/(?:(?:<!)(?:(?:--(?:[^-]*(?:-[^-]+)*)--\s*)*)(?:>))/ms',
                '/(?:(?:\/\*\/*[^\/\*]*)+\*\/)/ms',
                '/(?:--[^-]*-)/ms'
            );
            $converted = preg_replace($pattern, ';', $value);
            $value    .= "\n" . $converted;
        }
        //make sure inline comments are detected and converted correctly
        $value = preg_replace('/(<\w+)\/+(\w+=?)/m', '$1/$2', $value);
        $value = preg_replace('/[^\\\:]\/\/(.*)$/m', '/**/$1', $value);
        $value = preg_replace('/([^\-&])#.*[\r\n\v\f]/m', '$1', $value);
        $value = preg_replace('/([^&\-])#.*\n/m', '$1 ', $value);
        $value = preg_replace('/^#.*\n/m', ' ', $value);
        return $value;
    }
    /**
     * Strip newlines
     *
     * @param string $value the value to convert
     *
     * @static
     * @return string
     */
    public static function convertFromWhiteSpace($value)
    {
        //check for inline linebreaks
        $search = array('\r', '\n', '\f', '\t', '\v');
        $value  = str_replace($search, ';', $value);
        // replace replacement characters regular spaces
        $value = str_replace('�', ' ', $value);
        //convert real linebreaks
        return preg_replace('/(?:\n|\r|\v)/m', '  ', $value);
    }
    /**
     * Checks for common charcode pattern and decodes them
     *
     * @param string $value the value to convert
     *
     * @static
     * @return string
     */
    public static function convertFromJSCharcode($value)
    {
        $matches = array();
        // check if value matches typical charCode pattern
        if (preg_match_all('/(?:[\d+-=\/\* ]+(?:\s?,\s?[\d+-=\/\* ]+)){4,}/ms', $value, $matches)) {
            $converted = '';
            $string    = implode(',', $matches[0]);
            $string    = preg_replace('/\s/', '', $string);
            $string    = preg_replace('/\w+=/', '', $string);
            $charcode  = explode(',', $string);
            foreach ($charcode as $char) {
                $char = preg_replace('/\W0/s', '', $char);
                if (preg_match_all('/\d*[+-\/\* ]\d+/', $char, $matches)) {
                    $match = preg_split('/(\W?\d+)/', implode('', $matches[0]), null, PREG_SPLIT_DELIM_CAPTURE);
                    if (array_sum($match) >= 20 && array_sum($match) <= 127) {
                        $converted .= chr(array_sum($match));
                    }
                } elseif (!empty($char) && $char >= 20 && $char <= 127) {
                    $converted .= chr($char);
                }
            }
            $value .= "\n" . $converted;
        }
        // check for octal charcode pattern
        if (preg_match_all('/(?:(?:[\\\]+\d+[ \t]*){8,})/ims', $value, $matches)) {
            $converted = '';
            $charcode  = explode('\\', preg_replace('/\s/', '', implode(',', $matches[0])));
            foreach (array_map('octdec', array_filter($charcode)) as $char) {
                if (20 <= $char && $char <= 127) {
                    $converted .= chr($char);
                }
            }
            $value .= "\n" . $converted;
        }
        // check for hexadecimal charcode pattern
        if (preg_match_all('/(?:(?:[\\\]+\w+\s*){8,})/ims', $value, $matches)) {
            $converted = '';
            $charcode  = explode('\\', preg_replace('/[ux]/', '', implode(',', $matches[0])));
            foreach (array_map('hexdec', array_filter($charcode)) as $char) {
                if (20 <= $char && $char <= 127) {
                    $converted .= chr($char);
                }
            }
            $value .= "\n" . $converted;
        }
        return $value;
    }
    /**
     * Eliminate JS regex modifiers
     *
     * @param string $value the value to convert
     *
     * @static
     * @return string
     */
    public static function convertJSRegexModifiers($value)
    {
        return preg_replace('/\/[gim]+/', '/', $value);
    }
    /**
     * Converts from hex/dec entities
     *
     * @param string $value the value to convert
     *
     * @static
     * @return string
     */
    public static function convertEntities($value)
    {
        $converted = null;
        //deal with double encoded payload
        $value = preg_replace('/&amp;/', '&', $value);
        if (preg_match('/&#x?[\w]+/ms', $value)) {
            $converted = preg_replace('/(&#x?[\w]{2}\d?);?/ms', '$1;', $value);
            $converted = html_entity_decode($converted, ENT_QUOTES, 'UTF-8');
            $value    .= "\n" . str_replace(';;', ';', $converted);
        }
        // normalize obfuscated protocol handlers
        $value = preg_replace(
            '/(?:j\s*a\s*v\s*a\s*s\s*c\s*r\s*i\s*p\s*t\s*:)|(d\s*a\s*t\s*a\s*:)/ms',
            'javascript:',
            $value
        );
        return $value;
    }
    /**
     * Normalize quotes
     *
     * @param string $value the value to convert
     *
     * @static
     * @return string
     */
    public static function convertQuotes($value)
    {
        // normalize different quotes to "
        $pattern = array('\'', '`', '´', '’', '‘');
        $value   = str_replace($pattern, '"', $value);
        //make sure harmless quoted strings don't generate false alerts
        $value = preg_replace('/^"([^"=\\!><~]+)"$/', '$1', $value);
        return $value;
    }
    /**
     * Converts SQLHEX to plain text
     *
     * @param string $value the value to convert
     *
     * @static
     * @return string
     */
    public static function convertFromSQLHex($value)
    {
        $matches = array();
        if (preg_match_all('/(?:(?:\A|[^\d])0x[a-f\d]{3,}[a-f\d]*)+/im', $value, $matches)) {
            foreach ($matches[0] as $match) {
                $converted = '';
                foreach (str_split($match, 2) as $hex_index) {
                    if (preg_match('/[a-f\d]{2,3}/i', $hex_index)) {
                        $converted .= chr(hexdec($hex_index));
                    }
                }
                $value = str_replace($match, $converted, $value);
            }
        }
        // take care of hex encoded ctrl chars
        $value = preg_replace('/0x\d+/m', ' 1 ', $value);
        return $value;
    }
    /**
     * Converts basic SQL keywords and obfuscations
     *
     * @param string $value the value to convert
     *
     * @static
     * @return string
     */
    public static function convertFromSQLKeywords($value)
    {
        $pattern = array(
            '/(?:is\s+null)|(like\s+null)|' .
            '(?:(?:^|\W)in[+\s]*\([\s\d"]+[^()]*\))/ims'
        );
        $value   = preg_replace($pattern, '"=0', $value);
        $value   = preg_replace('/[^\w\)]+\s*like\s*[^\w\s]+/ims', '1" OR "1"', $value);
        $value   = preg_replace('/null([,"\s])/ims', '0$1', $value);
        $value   = preg_replace('/\d+\./ims', ' 1', $value);
        $value   = preg_replace('/,null/ims', ',0', $value);
        $value   = preg_replace('/(?:between)/ims', 'or', $value);
        $value   = preg_replace('/(?:and\s+\d+\.?\d*)/ims', '', $value);
        $value   = preg_replace('/(?:\s+and\s+)/ims', ' or ', $value);
        $pattern = array(
            '/(?:not\s+between)|(?:is\s+not)|(?:not\s+in)|' .
            '(?:xor|<>|rlike(?:\s+binary)?)|' .
            '(?:regexp\s+binary)|' .
            '(?:sounds\s+like)/ims'
        );
        $value   = preg_replace($pattern, '!', $value);
        $value   = preg_replace('/"\s+\d/', '"', $value);
        $value   = preg_replace('/(\W)div(\W)/ims', '$1 OR $2', $value);
        $value   = preg_replace('/\/(?:\d+|null)/', null, $value);
        return $value;
    }
    /**
     * Detects nullbytes and controls chars via ord()
     *
     * @param string $value the value to convert
     *
     * @static
     * @return string
     */
    public static function convertFromControlChars($value)
    {
        // critical ctrl values
        $search = array(
            chr(0), chr(1), chr(2), chr(3), chr(4), chr(5),
            chr(6), chr(7), chr(8), chr(11), chr(12), chr(14),
            chr(15), chr(16), chr(17), chr(18), chr(19), chr(24),
            chr(25), chr(192), chr(193), chr(238), chr(255), '\\0'
        );
        $value = str_replace($search, '%00', $value);
        //take care for malicious unicode characters
        $value = urldecode(
            preg_replace(
                '/(?:%E(?:2|3)%8(?:0|1)%(?:A|8|9)\w|%EF%BB%BF|%EF%BF%BD)|(?:&#(?:65|8)\d{3};?)/i',
                null,
                urlencode($value)
            )
        );
        $value = urlencode($value);
        $value = preg_replace('/(?:%F0%80%BE)/i', '>', $value);
        $value = preg_replace('/(?:%F0%80%BC)/i', '<', $value);
        $value = preg_replace('/(?:%F0%80%A2)/i', '"', $value);
        $value = preg_replace('/(?:%F0%80%A7)/i', '\'', $value);
        $value = urldecode($value);
        $value = preg_replace('/(?:%ff1c)/', '<', $value);
        $value = preg_replace('/(?:&[#x]*(200|820|200|820|zwn?j|lrm|rlm)\w?;?)/i', null, $value);
        $value = preg_replace(
            '/(?:&#(?:65|8)\d{3};?)|' .
            '(?:&#(?:56|7)3\d{2};?)|' .
            '(?:&#x(?:fe|20)\w{2};?)|' .
            '(?:&#x(?:d[c-f])\w{2};?)/i',
            null,
            $value
        );
        $value = str_replace(
            array(
                '«',
                '〈',
                '<',
                '‹',
                '〈',
                '⟨'
            ),
            '<',
            $value
        );
        $value = str_replace(
            array(
                '»',
                '〉',
                '>',
                '›',
                '〉',
                '⟩'
            ),
            '>',
            $value
        );
        return $value;
    }
    /**
     * This method matches and translates base64 strings and fragments
     * used in data URIs
     *
     * @param string $value the value to convert
     *
     * @static
     * @return string
     */
    public static function convertFromNestedBase64($value)
    {
        $matches = array();
        preg_match_all('/(?:^|[,&?])\s*([a-z0-9]{50,}=*)(?:\W|$)/im', $value, $matches);
        foreach ($matches[1] as $item) {
            if (isset($item) && !preg_match('/[a-f0-9]{32}/i', $item)) {
                $base64_item = base64_decode($item);
                $value = str_replace($item, $base64_item, $value);
            }
        }
        return $value;
    }
    /**
     * Detects nullbytes and controls chars via ord()
     *
     * @param string $value the value to convert
     *
     * @static
     * @return string
     */
    public static function convertFromOutOfRangeChars($value)
    {
        $values = str_split($value);
        foreach ($values as $item) {
            if (ord($item) >= 127) {
                $value = str_replace($item, ' ', $value);
            }
        }
        return $value;
    }
    /**
     * Strip XML patterns
     *
     * @param string $value the value to convert
     *
     * @static
     * @return string
     */
    public static function convertFromXML($value)
    {
        $converted = strip_tags($value);
        if (!$converted || $converted === $value) {
            return $value;
        } else {
            return $value . "\n" . $converted;
        }
    }
    /**
     * This method converts JS unicode code points to
     * regular characters
     *
     * @param string $value the value to convert
     *
     * @static
     * @return string
     */
    public static function convertFromJSUnicode($value)
    {
        $matches = array();
        preg_match_all('/\\\u[0-9a-f]{4}/ims', $value, $matches);
        if (!empty($matches[0])) {
            foreach ($matches[0] as $match) {
                $chr = chr(hexdec(substr($match, 2, 4)));
                $value = str_replace($match, $chr, $value);
            }
            $value .= "\n\u0001";
        }
        return $value;
    }
    /**
     * Converts relevant UTF-7 tags to UTF-8
     *
     * @param string $value the value to convert
     *
     * @static
     * @return string
     */
    public static function convertFromUTF7($value)
    {
        if (preg_match('/\+A\w+-?/m', $value)) {
            if (function_exists('mb_convert_encoding')) {
                if (version_compare(PHP_VERSION, '5.2.8', '<')) {
                    $tmp_chars = str_split($value);
                    $value = '';
                    foreach ($tmp_chars as $char) {
                        if (ord($char) <= 127) {
                            $value .= $char;
                        }
                    }
                }
                $value .= "\n" . mb_convert_encoding($value, 'UTF-8', 'UTF-7');
            } else {
                //list of all critical UTF7 codepoints
                $schemes = array(
                    '+ACI-'      => '"',
                    '+ADw-'      => '<',
                    '+AD4-'      => '>',
                    '+AFs-'      => '[',
                    '+AF0-'      => ']',
                    '+AHs-'      => '{',
                    '+AH0-'      => '}',
                    '+AFw-'      => '\\',
                    '+ADs-'      => ';',
                    '+ACM-'      => '#',
                    '+ACY-'      => '&',
                    '+ACU-'      => '%',
                    '+ACQ-'      => '$',
                    '+AD0-'      => '=',
                    '+AGA-'      => '`',
                    '+ALQ-'      => '"',
                    '+IBg-'      => '"',
                    '+IBk-'      => '"',
                    '+AHw-'      => '|',
                    '+ACo-'      => '*',
                    '+AF4-'      => '^',
                    '+ACIAPg-'   => '">',
                    '+ACIAPgA8-' => '">'
                );
                $value = str_ireplace(
                    array_keys($schemes),
                    array_values($schemes),
                    $value
                );
            }
        }
        return $value;
    }
    /**
     * Converts basic concatenations
     *
     * @param string $value the value to convert
     *
     * @static
     * @return string
     */
    public static function convertFromConcatenated($value)
    {
        //normalize remaining backslashes
        if ($value != preg_replace('/(\w)\\\/', "$1", $value)) {
            $value .= preg_replace('/(\w)\\\/', "$1", $value);
        }
        $compare = stripslashes($value);
        $pattern = array(
            '/(?:<\/\w+>\+<\w+>)/s',
            '/(?:":\d+[^"[]+")/s',
            '/(?:"?"\+\w+\+")/s',
            '/(?:"\s*;[^"]+")|(?:";[^"]+:\s*")/s',
            '/(?:"\s*(?:;|\+).{8,18}:\s*")/s',
            '/(?:";\w+=)|(?:!""&&")|(?:~)/s',
            '/(?:"?"\+""?\+?"?)|(?:;\w+=")|(?:"[|&]{2,})/s',
            '/(?:"\s*\W+")/s',
            '/(?:";\w\s*\+=\s*\w?\s*")/s',
            '/(?:"[|&;]+\s*[^|&\n]*[|&]+\s*"?)/s',
            '/(?:";\s*\w+\W+\w*\s*[|&]*")/s',
            '/(?:"\s*"\s*\.)/s',
            '/(?:\s*new\s+\w+\s*[+",])/',
            '/(?:(?:^|\s+)(?:do|else)\s+)/',
            '/(?:[{(]\s*new\s+\w+\s*[)}])/',
            '/(?:(this|self)\.)/',
            '/(?:undefined)/',
            '/(?:in\s+)/'
        );
        // strip out concatenations
        $converted = preg_replace($pattern, null, $compare);
        //strip object traversal
        $converted = preg_replace('/\w(\.\w\()/', "$1", $converted);
        // normalize obfuscated method calls
        $converted = preg_replace('/\)\s*\+/', ")", $converted);
        //convert JS special numbers
        $converted = preg_replace(
            '/(?:\(*[.\d]e[+-]*[^a-z\W]+\)*)|(?:NaN|Infinity)\W/ims',
            1,
            $converted
        );
        if ($converted && ($compare != $converted)) {
            $value .= "\n" . $converted;
        }
        return $value;
    }
    /**
     * This method collects and decodes proprietary encoding types
     *
     * @param string $value the value to convert
     *
     * @static
     * @return string
     */
    public static function convertFromProprietaryEncodings($value)
    {
        //Xajax error reportings
        $value = preg_replace('/<!\[CDATA\[(\W+)\]\]>/im', '$1', $value);
        //strip false alert triggering apostrophes
        $value = preg_replace('/(\w)\"(s)/m', '$1$2', $value);
        //strip quotes within typical search patterns
        $value = preg_replace('/^"([^"=\\!><~]+)"$/', '$1', $value);
        //OpenID login tokens
        $value = preg_replace('/{[\w-]{8,9}\}(?:\{[\w=]{8}\}){2}/', null, $value);
        //convert Content and \sdo\s to null
        $value = preg_replace('/Content|\Wdo\s/', null, $value);
        //strip emoticons
        $value = preg_replace(
            '/(?:\s[:;]-[)\/PD]+)|(?:\s;[)PD]+)|(?:\s:[)PD]+)|-\.-|\^\^/m',
            null,
            $value
        );
        //normalize separation char repetion
        $value = preg_replace('/([.+~=*_\-;])\1{2,}/m', '$1', $value);
        //normalize multiple single quotes
        $value = preg_replace('/"{2,}/m', '"', $value);
        //normalize quoted numerical values and asterisks
        $value = preg_replace('/"(\d+)"/m', '$1', $value);
        //normalize pipe separated request parameters
        $value = preg_replace('/\|(\w+=\w+)/m', '&$1', $value);
        //normalize ampersand listings
        $value = preg_replace('/(\w\s)&\s(\w)/', '$1$2', $value);
        //normalize escaped RegExp modifiers
        $value = preg_replace('/\/\\\(\w)/', '/$1', $value);
        return $value;
    }
  /**
   * This method removes encoded sql # comments
   *
   * @param string $value the value to convert
   *
   * @static
   * @return string
   */
    public static function convertFromUrlencodeSqlComment($value)
    {
        if (preg_match_all('/(?:\%23.*?\%0a)/im',$value,$matches)){
            $converted = $value;
            foreach($matches[0] as $match){
                $converted = str_replace($match,' ',$converted);
            }
            $value .= "\n" . $converted;
        }
        return $value;
    }
    /**
     * This method is the centrifuge prototype
     *
     * @param string  $value   the value to convert
     * @param Monitor $monitor the monitor object
     *
     * @static
     * @return string
     */
    public static function runCentrifuge($value, Monitor $monitor = null)
    {
        $threshold = 3.49;
        if (strlen($value) > 25) {
            //strip padding
            $tmp_value = preg_replace('/\s{4}|==$/m', null, $value);
            $tmp_value = preg_replace(
                '/\s{4}|[\p{L}\d\+\-=,.%()]{8,}/m',
                'aaa',
                $tmp_value
            );
            // Check for the attack char ratio
            $tmp_value = preg_replace('/([*.!?+-])\1{1,}/m', '$1', $tmp_value);
            $tmp_value = preg_replace('/"[\p{L}\d\s]+"/m', null, $tmp_value);
            $stripped_length = strlen(
                preg_replace(
                    '/[\d\s\p{L}\.:,%&\/><\-)!|]+/m',
                    null,
                    $tmp_value
                )
            );
            $overall_length = strlen(
                preg_replace(
                    '/([\d\s\p{L}:,\.]{3,})+/m',
                    'aaa',
                    preg_replace('/\s{2,}/m', null, $tmp_value)
                )
            );
            if ($stripped_length != 0 && $overall_length/$stripped_length <= $threshold) {
                $monitor->centrifuge['ratio']     = $overall_length / $stripped_length;
                $monitor->centrifuge['threshold'] =$threshold;
                $value .= "\n$[!!!]";
            }
        }
        if (strlen($value) > 40) {
            // Replace all non-special chars
            $converted =  preg_replace('/[\w\s\p{L},.:!]/', null, $value);
            // Split string into an array, unify and sort
            $array = str_split($converted);
            $array = array_unique($array);
            asort($array);
            // Normalize certain tokens
            $schemes = array(
                '~' => '+',
                '^' => '+',
                '|' => '+',
                '*' => '+',
                '%' => '+',
                '&' => '+',
                '/' => '+'
            );
            $converted = implode($array);
            $_keys = array_keys($schemes);
            $_values = array_values($schemes);
            $converted = str_replace($_keys, $_values, $converted);
            $converted = preg_replace('/[+-]\s*\d+/', '+', $converted);
            $converted = preg_replace('/[()[\]{}]/', '(', $converted);
            $converted = preg_replace('/[!?:=]/', ':', $converted);
            $converted = preg_replace('/[^:(+]/', null, stripslashes($converted));
            // Sort again and implode
            $array = str_split($converted);
            asort($array);
            $converted = implode($array);
            if (preg_match('/(?:\({2,}\+{2,}:{2,})|(?:\({2,}\+{2,}:+)|(?:\({3,}\++:{2,})/', $converted)) {
                $monitor->centrifuge['converted'] = $converted;
                return $value . "\n" . $converted;
            }
        }
        return $value;
    }
}
interface/lib/classes/IDS/Event.php
New file
@@ -0,0 +1,221 @@
<?php
/**
 * PHPIDS
 *
 * Requirements: PHP5, SimpleXML
 *
 * Copyright (c) 2008 PHPIDS group (https://phpids.org)
 *
 * PHPIDS is free software; you can redistribute it and/or modify
 * it under the terms of the GNU Lesser General Public License as published by
 * the Free Software Foundation, version 3 of the License, or
 * (at your option) any later version.
 *
 * PHPIDS 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 Lesser General Public License for more details.
 *
 * You should have received a copy of the GNU Lesser General Public License
 * along with PHPIDS. If not, see <http://www.gnu.org/licenses/>.
 *
 * PHP version 5.1.6+
 *
 * @category Security
 * @package  PHPIDS
 * @author   Mario Heiderich <mario.heiderich@gmail.com>
 * @author   Christian Matthies <ch0012@gmail.com>
 * @author   Lars Strojny <lars@strojny.net>
 * @license  http://www.gnu.org/licenses/lgpl.html LGPL
 * @link     http://php-ids.org/
 */
namespace IDS;
/**
 * PHPIDS event object
 *
 * This class represents a certain event that occured while applying the filters
 * to the supplied data. It aggregates a bunch of IDS_Filter implementations and
 * is a assembled in IDS_Report.
 *
 * Note that this class implements both Countable and IteratorAggregate
 *
 * @category  Security
 * @package   PHPIDS
 * @author    Christian Matthies <ch0012@gmail.com>
 * @author    Mario Heiderich <mario.heiderich@gmail.com>
 * @author    Lars Strojny <lars@strojny.net>
 * @copyright 2007-2009 The PHPIDS Group
 * @license   http://www.gnu.org/licenses/lgpl.html LGPL
 * @link      http://php-ids.org/
 */
class Event implements \Countable, \IteratorAggregate
{
    /**
     * Event name
     *
     * @var string
     */
    protected $name = null;
    /**
     * Value of the event
     *
     * @var mixed
     */
    protected $value = null;
    /**
     * List of filter objects
     *
     * Filter objects in this array are those that matched the events value
     *
     * @var Filter[]|array
     */
    protected $filters = array();
    /**
     * Calculated impact
     *
     * Total impact of the event
     *
     * @var integer
     */
    protected $impact = 0;
    /**
     * Affecte tags
     *
     * @var string[]|array
     */
    protected $tags = array();
    /**
     * Constructor
     *
     * Fills event properties
     *
     * @param string            $name    the event name
     * @param mixed             $value   the event value
     * @param Filter[]|array    $filters the corresponding filters
     *
     * @throws \InvalidArgumentException
     * @return \IDS\Event
     */
    public function __construct($name, $value, array $filters)
    {
        if (!is_scalar($name)) {
            throw new \InvalidArgumentException(
                'Expected $name to be a scalar,' . gettype($name) . ' given'
            );
        }
        if (!is_scalar($value)) {
            throw new \InvalidArgumentException(
                'Expected $value to be a scalar,' . gettype($value) . ' given'
            );
        }
        $this->name  = $name;
        $this->value = $value;
        foreach ($filters as $filter) {
            if (!$filter instanceof Filter) {
                throw new \InvalidArgumentException(
                    'Filter must be derived from IDS_Filter'
                );
            }
            $this->filters[] = $filter;
        }
    }
    /**
     * Returns event name
     *
     * The name of the event usually is the key of the variable that was
     * considered to be malicious
     *
     * @return string
     */
    public function getName()
    {
        return $this->name;
    }
    /**
     * Returns event value
     *
     * @return mixed
     */
    public function getValue()
    {
        return $this->value;
    }
    /**
     * Returns calculated impact
     *
     * @return integer
     */
    public function getImpact()
    {
        if (!$this->impact) {
            $this->impact = 0;
            foreach ($this->filters as $filter) {
                $this->impact += $filter->getImpact();
            }
        }
        return $this->impact;
    }
    /**
     * Returns affected tags
     *
     * @return string[]|array
     */
    public function getTags()
    {
        foreach ($this->getFilters() as $filter) {
            $this->tags = array_merge($this->tags, $filter->getTags());
        }
        return $this->tags = array_values(array_unique($this->tags));
    }
    /**
     * Returns list of filter objects
     *
     * @return Filter[]|array
     */
    public function getFilters()
    {
        return $this->filters;
    }
    /**
     * Returns number of filters
     *
     * To implement interface Countable this returns the number of filters
     * appended.
     *
     * @return integer
     */
    public function count()
    {
        return count($this->getFilters());
    }
    /**
     * IteratorAggregate iterator getter
     *
     * Returns an iterator to iterate over the appended filters.
     *
     * @return \Iterator the filter collection
     */
    public function getIterator()
    {
        return new \ArrayIterator($this->getFilters());
    }
}
interface/lib/classes/IDS/Filter.php
New file
@@ -0,0 +1,175 @@
<?php
/**
 * PHPIDS
 *
 * Requirements: PHP5, SimpleXML
 *
 * Copyright (c) 2008 PHPIDS group (https://phpids.org)
 *
 * PHPIDS is free software; you can redistribute it and/or modify
 * it under the terms of the GNU Lesser General Public License as published by
 * the Free Software Foundation, version 3 of the License, or
 * (at your option) any later version.
 *
 * PHPIDS 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 Lesser General Public License for more details.
 *
 * You should have received a copy of the GNU Lesser General Public License
 * along with PHPIDS. If not, see <http://www.gnu.org/licenses/>.
 *
 * PHP version 5.1.6+
 *
 * @category Security
 * @package  PHPIDS
 * @author   Mario Heiderich <mario.heiderich@gmail.com>
 * @author   Christian Matthies <ch0012@gmail.com>
 * @author   Lars Strojny <lars@strojny.net>
 * @license  http://www.gnu.org/licenses/lgpl.html LGPL
 * @link     http://php-ids.org/
 */
namespace IDS;
/**
 * PHPIDS Filter object
 *
 * Each object of this class serves as a container for a specific filter. The
 * object provides methods to get information about this particular filter and
 * also to match an arbitrary string against it.
 *
 * @category  Security
 * @package   PHPIDS
 * @author    Christian Matthies <ch0012@gmail.com>
 * @author    Mario Heiderich <mario.heiderich@gmail.com>
 * @author    Lars Strojny <lars@strojny.net>
 * @copyright 2007-2009 The PHPIDS Group
 * @license   http://www.gnu.org/licenses/lgpl.html LGPL
 * @link      http://php-ids.org/
 * @since     Version 0.4
 */
class Filter
{
    /**
     * Filter rule
     *
     * @var string
     */
    protected $rule;
    /**
     * List of tags of the filter
     *
     * @var string[]|array
     */
    protected $tags = array();
    /**
     * Filter impact level
     *
     * @var integer
     */
    protected $impact = 0;
    /**
     * Filter description
     *
     * @var string
     */
    protected $description = '';
    /**
     * Constructor
     *
     * @param integer           $id          filter id
     * @param string            $rule        filter rule
     * @param string            $description filter description
     * @param string[]|array    $tags        list of tags
     * @param integer           $impact      filter impact level
     *
     * @return \IDS\Filter
     */
    public function __construct($id, $rule, $description, array $tags, $impact)
    {
        $this->id          = $id;
        $this->rule        = $rule;
        $this->tags        = $tags;
        $this->impact      = $impact;
        $this->description = $description;
    }
    /**
     * Matches a string against current filter
     *
     * Matches given string against the filter rule the specific object of this
     * class represents
     *
     * @param string $input the string input to match
     *
     * @throws \InvalidArgumentException if argument is no string
     * @return boolean
     */
    public function match($input)
    {
        if (!is_string($input)) {
            throw new \InvalidArgumentException(
                'Invalid argument. Expected a string, received ' . gettype($input)
            );
        }
        return (bool) preg_match('/' . $this->getRule() . '/ms', strtolower($input));
    }
    /**
     * Returns filter description
     *
     * @return string
     */
    public function getDescription()
    {
        return $this->description;
    }
    /**
     * Return list of affected tags
     *
     * Each filter rule is concerned with a certain kind of attack vectors.
     * This method returns those affected kinds.
     *
     * @return string[]|array
     */
    public function getTags()
    {
        return $this->tags;
    }
    /**
     * Returns filter rule
     *
     * @return string
     */
    public function getRule()
    {
        return $this->rule;
    }
    /**
     * Get filter impact level
     *
     * @return integer
     */
    public function getImpact()
    {
        return $this->impact;
    }
    /**
     * Get filter ID
     *
     * @return integer
     */
    public function getId()
    {
        return $this->id;
    }
}
interface/lib/classes/IDS/Filter/Storage.php
New file
@@ -0,0 +1,401 @@
<?php
/**
 * PHPIDS
 *
 * Requirements: PHP5, SimpleXML
 *
 * Copyright (c) 2008 PHPIDS group (https://phpids.org)
 *
 * PHPIDS is free software; you can redistribute it and/or modify
 * it under the terms of the GNU Lesser General Public License as published by
 * the Free Software Foundation, version 3 of the License, or
 * (at your option) any later version.
 *
 * PHPIDS 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 Lesser General Public License for more details.
 *
 * You should have received a copy of the GNU Lesser General Public License
 * along with PHPIDS. If not, see <http://www.gnu.org/licenses/>.
 *
 * PHP version 5.1.6+
 *
 * @category Security
 * @package  PHPIDS
 * @author   Mario Heiderich <mario.heiderich@gmail.com>
 * @author   Christian Matthies <ch0012@gmail.com>
 * @author   Lars Strojny <lars@strojny.net>
 * @license  http://www.gnu.org/licenses/lgpl.html LGPL
 * @link     http://php-ids.org/
 */
namespace IDS\Filter;
use IDS\Init;
use IDS\Caching\CacheFactory;
/**
 * Filter Storage
 *
 * This class provides various default functions for gathering filter patterns
 * to be used later on by the detection mechanism. You might extend this class
 * to your requirements.
 *
 * @category  Security
 * @package   PHPIDS
 * @author    Christian Matthies <ch0012@gmail.com>
 * @author    Mario Heiderich <mario.heiderich@gmail.com>
 * @author    Lars Strojny <lars@strojny.net>
 * @copyright 2007-2009 The PHPIDS Group
 * @license   http://www.gnu.org/licenses/lgpl.html LGPL
 * @link      http://php-ids.org/
 */
class Storage
{
    /**
     * Filter source file
     *
     * @var string
     */
    protected $source = null;
    /**
     * Holds caching settings
     *
     * @var array
     */
    protected $cacheSettings = null;
    /**
     * Cache container
     *
     * @var object IDS_Caching wrapper
     */
    protected $cache = null;
    /**
     * Filter container
     *
     * @var array
     */
    protected $filterSet = array();
    /**
     * Constructor
     *
     * Loads filters based on provided IDS_Init settings.
     *
     * @param object $init IDS_Init instance
     *
     * @throws \InvalidArgumentException if unsupported filter type is given
     * @return void
     */
    final public function __construct(Init $init)
    {
        if ($init->config) {
            $caching      = isset($init->config['Caching']['caching']) ? $init->config['Caching']['caching'] : 'none';
            $type         = $init->config['General']['filter_type'];
            $this->source = $init->getBasePath(). $init->config['General']['filter_path'];
            if ($caching && $caching !== 'none') {
                $this->cacheSettings = $init->config['Caching'];
                $this->cache = CacheFactory::factory($init, 'storage');
            }
            switch ($type) {
                case 'xml':
                    return $this->getFilterFromXML();
                case 'json':
                    return $this->getFilterFromJson();
                default:
                    throw new \InvalidArgumentException('Unsupported filter type.');
            }
        }
    }
    /**
     * Sets the filter array
     *
     * @param array $filterSet array containing multiple IDS_Filter instances
     *
     * @return object $this
     */
    final public function setFilterSet($filterSet)
    {
        foreach ($filterSet as $filter) {
            $this->addFilter($filter);
        }
        return $this;
    }
    /**
     * Returns registered filters
     *
     * @return array
     */
    final public function getFilterSet()
    {
        return $this->filterSet;
    }
    /**
     * Adds a filter
     *
     * @param object $filter IDS_Filter instance
     *
     * @return object $this
     */
    final public function addFilter(\IDS\Filter $filter)
    {
        $this->filterSet[] = $filter;
        return $this;
    }
    /**
     * Checks if any filters are cached
     *
     * @return mixed $filters cached filters or false
     */
    private function isCached()
    {
        $filters = false;
        if ($this->cacheSettings) {
            if ($this->cache) {
                $filters = $this->cache->getCache();
            }
        }
        return $filters;
    }
    /**
     * Loads filters from XML using SimpleXML
     *
     * This function parses the provided source file and stores the result.
     * If caching mode is enabled the result will be cached to increase
     * the performance.
     *
     * @throws \InvalidArgumentException if source file doesn't exist
     * @throws \RuntimeException if problems with fetching the XML data occur
     * @return object    $this
     */
    public function getFilterFromXML()
    {
        if (extension_loaded('SimpleXML')) {
            /*
             * See if filters are already available in the cache
             */
            $filters = $this->isCached();
            /*
             * If they aren't, parse the source file
             */
            if (!$filters) {
                if (!file_exists($this->source)) {
                    throw new \InvalidArgumentException(
                        sprintf('Invalid config: %s doesn\'t exist.', $this->source)
                    );
                }
                if (LIBXML_VERSION >= 20621) {
                    $filters = simplexml_load_file($this->source, null, LIBXML_COMPACT);
                } else {
                    $filters = simplexml_load_file($this->source);
                }
            }
            /*
             * In case we still don't have any filters loaded and exception
             * will be thrown
             */
            if (empty($filters)) {
                throw new \RuntimeException(
                    'XML data could not be loaded.' .
                    ' Make sure you specified the correct path.'
                );
            }
            /*
             * Now the storage will be filled with IDS_Filter objects
             */
            $nocache = $filters instanceof \SimpleXMLElement;
            if ($nocache)
            {
                // build filters and cache them for re-use on next run
                $data    = array();
                $filters = $filters->filter;
                foreach ($filters as $filter) {
                    $id          = (string) $filter->id;
                    $rule        = (string) $filter->rule;
                    $impact      = (string) $filter->impact;
                    $tags        = array_values((array) $filter->tags);
                    $description = (string) $filter->description;
                    $this->addFilter(
                            new \IDS\Filter(
                                    $id,
                                    $rule,
                                    $description,
                                    (array) $tags[0],
                                    (int) $impact
                            )
                    );
                    $data[] = array(
                            'id'          => $id,
                            'rule'        => $rule,
                            'impact'      => $impact,
                            'tags'        => $tags,
                            'description' => $description
                    );
                }
                /*
                 * If caching is enabled, the fetched data will be cached
                */
                if ($this->cacheSettings) {
                    $this->cache->setCache($data);
                }
            } else {
                // build filters from cached content
                $this->addFiltersFromArray($filters);
            }
            return $this;
        }
        throw new \RuntimeException('SimpleXML is not loaded.');
    }
    /**
     * Loads filters from Json file using ext/Json
     *
     * This function parses the provided source file and stores the result.
     * If caching mode is enabled the result will be cached to increase
     * the performance.
     *
     * @throws \RuntimeException if problems with fetching the JSON data occur
     * @return object    $this
     */
    public function getFilterFromJson()
    {
        if (extension_loaded('Json')) {
            /*
             * See if filters are already available in the cache
             */
            $filters = $this->isCached();
            /*
             * If they aren't, parse the source file
             */
            if (!$filters) {
                if (!file_exists($this->source)) {
                    throw new \InvalidArgumentException(
                        sprintf('Invalid config: %s doesn\'t exist.', $this->source)
                    );
                }
                $filters = json_decode(file_get_contents($this->source));
            }
            if (!$filters) {
                throw new \RuntimeException('JSON data could not be loaded. Make sure you specified the correct path.');
            }
            /*
             * Now the storage will be filled with IDS_Filter objects
             */
            $nocache = !is_array($filters);
            if ($nocache) {
                // build filters and cache them for re-use on next run
                $data    = array();
                $filters = $filters->filters->filter;
                foreach ($filters as $filter) {
                    $id          = (string) $filter->id;
                    $rule        = (string) $filter->rule;
                    $impact      = (string) $filter->impact;
                    $tags        = array_values((array) $filter->tags);
                    $description = (string) $filter->description;
                    $this->addFilter(
                        new \IDS\Filter(
                            $id,
                            $rule,
                            $description,
                            (array) $tags[0],
                            (int) $impact
                        )
                    );
                    $data[] = array(
                        'id'          => $id,
                        'rule'        => $rule,
                        'impact'      => $impact,
                        'tags'        => $tags,
                        'description' => $description
                    );
                }
                /*
                 * If caching is enabled, the fetched data will be cached
                 */
                if ($this->cacheSettings) {
                    $this->cache->setCache($data);
                }
            } else {
                // build filters from cached content
                $this->addFiltersFromArray($filters);
            }
            return $this;
        }
        throw new \RuntimeException('json extension is not loaded.');
    }
    /**
     * This functions adds an array of filters to the IDS_Storage object.
     * Each entry within the array is expected to be an simple array containing all parts of the filter.
     *
     * @param array $filters
     */
    private function addFiltersFromArray(array $filters)
    {
        foreach ($filters as $filter) {
            $id          = $filter['id'];
            $rule        = $filter['rule'];
            $impact      = $filter['impact'];
            $tags        = $filter['tags'];
            $description = $filter['description'];
            $this->addFilter(
                new \IDS\Filter(
                    $id,
                    $rule,
                    $description,
                    (array) $tags[0],
                    (int) $impact
                )
            );
        }
    }
}
interface/lib/classes/IDS/Init.php
New file
@@ -0,0 +1,174 @@
<?php
/**
 * PHPIDS
 *
 * Requirements: PHP5, SimpleXML
 *
 * Copyright (c) 2008 PHPIDS group (https://phpids.org)
 *
 * PHPIDS is free software; you can redistribute it and/or modify
 * it under the terms of the GNU Lesser General Public License as published by
 * the Free Software Foundation, version 3 of the License, or
 * (at your option) any later version.
 *
 * PHPIDS 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 Lesser General Public License for more details.
 *
 * You should have received a copy of the GNU Lesser General Public License
 * along with PHPIDS. If not, see <http://www.gnu.org/licenses/>.
 *
 * PHP version 5.1.6+
 *
 * @category Security
 * @package  PHPIDS
 * @author   Mario Heiderich <mario.heiderich@gmail.com>
 * @author   Christian Matthies <ch0012@gmail.com>
 * @author   Lars Strojny <lars@strojny.net>
 * @license  http://www.gnu.org/licenses/lgpl.html LGPL
 * @link     http://php-ids.org/
 */
namespace IDS;
/**
 * Framework initiation
 *
 * This class is used for the purpose to initiate the framework and inhabits
 * functionality to parse the needed configuration file.
 *
 * @category  Security
 * @package   PHPIDS
 * @author    Christian Matthies <ch0012@gmail.com>
 * @author    Mario Heiderich <mario.heiderich@gmail.com>
 * @author    Lars Strojny <lars@strojny.net>
 * @copyright 2007-2009 The PHPIDS Groupup
 * @license   http://www.gnu.org/licenses/lgpl.html LGPL
 * @link      http://php-ids.org/
 * @since     Version 0.4
 */
class Init
{
    /**
     * Holds config settings
     *
     * @var array
     */
    public $config = array();
    /**
     * Instance of this class depending on the supplied config file
     *
     * @var Init[]|array
     * @static
     */
    private static $instances = array();
    /**
     * Constructor
     *
     * Includes needed classes and parses the configuration file
     *
     * @param array $config
     *
     * @return \IDS\Init $this
     */
    public function __construct(array $config = array())
    {
        $this->config = $config;
    }
    /**
     * Returns an instance of this class. Also a PHP version check
     * is being performed to avoid compatibility problems with PHP < 5.1.6
     *
     * @param string|null $configPath the path to the config file
     *
     * @throws \InvalidArgumentException
     * @return self
     */
    public static function init($configPath = null)
    {
        if (!$configPath) {
            return new self();
        }
        if (!isset(self::$instances[$configPath])) {
            if (!file_exists($configPath) || !is_readable($configPath)) {
                throw new \InvalidArgumentException("Invalid config path '$configPath'");
            }
            self::$instances[$configPath] = new static(parse_ini_file($configPath, true));
        }
        return self::$instances[$configPath];
    }
    /**
     * This method checks if a base path is given and usage is set to true.
     * If all that tests succeed the base path will be returned as a string -
     * else null will be returned.
     *
     * @return string|null  the base path or null
     */
    public function getBasePath()
    {
        return (!empty($this->config['General']['base_path'])
                && !empty($this->config['General']['use_base_path']))
            ? $this->config['General']['base_path'] : null;
    }
    /**
     * Merges new settings into the exsiting ones or overwrites them
     *
     * @param array   $config    the config array
     * @param boolean $overwrite config overwrite flag
     *
     * @return void
     */
    public function setConfig(array $config, $overwrite = false)
    {
        if ($overwrite) {
            $this->config = $this->mergeConfig($this->config, $config);
        } else {
            $this->config = $this->mergeConfig($config, $this->config);
        }
    }
    /**
     * Merge config hashes recursivly
     *
     * The algorithm merges configuration arrays recursively. If an element is
     * an array in both, the values will be appended. If it is a scalar in both,
     * the value will be replaced.
     *
     * @param  array $current   The legacy hash
     * @param  array $successor The hash which values count more when in doubt
     * @return array Merged hash
     */
    protected function mergeConfig($current, $successor)
    {
        if (is_array($current) and is_array($successor)) {
            foreach ($successor as $key => $value) {
                if (isset($current[$key])
                    and is_array($value)
                    and is_array($current[$key])) {
                    $current[$key] = $this->mergeConfig($current[$key], $value);
                } else {
                    $current[$key] = $successor[$key];
                }
            }
        }
        return $current;
    }
    /**
     * Returns the config array
     *
     * @return array the config array
     */
    public function getConfig()
    {
        return $this->config;
    }
}
interface/lib/classes/IDS/Monitor.php
New file
@@ -0,0 +1,566 @@
<?php
/**
 * PHPIDS
 *
 * Requirements: PHP5, SimpleXML
 *
 * Copyright (c) 2008 PHPIDS group (https://phpids.org)
 *
 * PHPIDS is free software; you can redistribute it and/or modify
 * it under the terms of the GNU Lesser General Public License as published by
 * the Free Software Foundation, version 3 of the License, or
 * (at your option) any later version.
 *
 * PHPIDS 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 Lesser General Public License for more details.
 *
 * You should have received a copy of the GNU Lesser General Public License
 * along with PHPIDS. If not, see <http://www.gnu.org/licenses/>.
 *
 * PHP version 5.1.6+
 *
 * @category Security
 * @package  PHPIDS
 * @author   Mario Heiderich <mario.heiderich@gmail.com>
 * @author   Christian Matthies <ch0012@gmail.com>
 * @author   Lars Strojny <lars@strojny.net>
 * @license  http://www.gnu.org/licenses/lgpl.html LGPL
 * @link     http://php-ids.org/
 */
namespace IDS;
use IDS\Filter\Storage;
/**
 * Monitoring engine
 *
 * This class represents the core of the frameworks attack detection mechanism
 * and provides functions to scan incoming data for malicious appearing script
 * fragments.
 *
 * @category  Security
 * @package   PHPIDS
 * @author    Christian Matthies <ch0012@gmail.com>
 * @author    Mario Heiderich <mario.heiderich@gmail.com>
 * @author    Lars Strojny <lars@strojny.net>
 * @copyright 2007-2009 The PHPIDS Group
 * @license   http://www.gnu.org/licenses/lgpl.html LGPL
 * @link      http://php-ids.org/
 */
class Monitor
{
    /**
     * Tags to define what to search for
     *
     * Accepted values are xss, csrf, sqli, dt, id, lfi, rfe, spam, dos
     *
     * @var array
     */
    private $tags = null;
    /**
     * Container for filter rules
     *
     * Holds an instance of Storage
     *
     * @var Storage
     */
    private $storage = null;
    /**
     * Scan keys switch
     *
     * Enabling this property will cause the monitor to scan both the key and
     * the value of variables
     *
     * @var boolean
     */
    public $scanKeys = false;
    /**
     * Exception container
     *
     * Using this array it is possible to define variables that must not be
     * scanned. Per default, utmz google analytics parameters are permitted.
     *
     * @var array
     */
    private $exceptions = array();
    /**
     * Html container
     *
     * Using this array it is possible to define variables that legally
     * contain html and have to be prepared before hitting the rules to
     * avoid too many false alerts
     *
     * @var array
     */
    private $html = array();
    /**
     * JSON container
     *
     * Using this array it is possible to define variables that contain
     * JSON data - and should be treated as such
     *
     * @var array
     */
    private $json = array();
    /**
     * Holds HTMLPurifier object
     *
     * @var \HTMLPurifier
     */
    private $htmlPurifier = null;
    /**
     * HTMLPurifier cache directory
     *
     * @var string
     */
    private $HTMLPurifierCache = '';
    /**
     * This property holds the tmp JSON string from the _jsonDecodeValues() callback
     *
     * @var string
     */
    private $tmpJsonString = '';
    /**
     * Constructor
     *
     * @throws \InvalidArgumentException When PHP version is less than what the library supports
     * @throws \Exception
     * @param  Init       $init instance of IDS_Init
     * @param  array|null $tags list of tags to which filters should be applied
     * @return Monitor
     */
    public function __construct(Init $init, array $tags = null)
    {
        $this->storage    = new Storage($init);
        $this->tags       = $tags;
        $this->scanKeys   = $init->config['General']['scan_keys'];
        $this->exceptions = isset($init->config['General']['exceptions']) ? $init->config['General']['exceptions'] : array();
        $this->html       = isset($init->config['General']['html'])       ? $init->config['General']['html'] : array();
        $this->json       = isset($init->config['General']['json'])       ? $init->config['General']['json'] : array();
        if (isset($init->config['General']['HTML_Purifier_Cache'])) {
            $this->HTMLPurifierCache  = $init->getBasePath() . $init->config['General']['HTML_Purifier_Cache'];
        }
        $tmpPath = $init->getBasePath() . $init->config['General']['tmp_path'];
        if (!is_writeable($tmpPath)) {
            throw new \InvalidArgumentException("Please make sure the folder '$tmpPath' is writable");
        }
    }
    /**
     * Starts the scan mechanism
     *
     * @param  array $request
     * @return Report
     */
    public function run(array $request)
    {
        $report = new Report;
        foreach ($request as $key => $value) {
            $report = $this->iterate($key, $value, $report);
        }
        return $report;
    }
    /**
     * Iterates through given data and delegates it to IDS_Monitor::_detect() in
     * order to check for malicious appearing fragments
     *
     * @param string       $key   the former array key
     * @param array|string $value the former array value
     * @param Report       $report
     * @return Report
     */
    private function iterate($key, $value, Report $report)
    {
        if (is_array($value)) {
            foreach ($value as $subKey => $subValue) {
                $this->iterate("$key.$subKey", $subValue, $report);
            }
        } elseif (is_string($value)) {
            if ($filter = $this->detect($key, $value)) {
                $report->addEvent(new Event($key, $value, $filter));
            }
        }
        return $report;
    }
    /**
     * Checks whether given value matches any of the supplied filter patterns
     *
     * @param mixed $key   the key of the value to scan
     * @param mixed $value the value to scan
     *
     * @return Filter[] array of filter(s) that matched the value
     */
    private function detect($key, $value)
    {
        // define the pre-filter
        $preFilter = '([^\w\s/@!?\.]+|(?:\./)|(?:@@\w+)|(?:\+ADw)|(?:union\s+select))i';
        // to increase performance, only start detection if value isn't alphanumeric
        if ((!$this->scanKeys || !$key || !preg_match($preFilter, $key)) && (!$value || !preg_match($preFilter, $value))) {
            return array();
        }
        // check if this field is part of the exceptions
        foreach ($this->exceptions as $exception) {
            $matches = array();
            if (($exception === $key) || preg_match('((/.*/[^eE]*)$)', $exception, $matches) && isset($matches[1]) && preg_match($matches[1], $key)) {
                return array();
            }
        }
        // check for magic quotes and remove them if necessary
        if (function_exists('get_magic_quotes_gpc') && !get_magic_quotes_gpc()) {
            $value = preg_replace('(\\\(["\'/]))im', '$1', $value);
        }
        // if html monitoring is enabled for this field - then do it!
        if (is_array($this->html) && in_array($key, $this->html, true)) {
            list($key, $value) = $this->purifyValues($key, $value);
        }
        // check if json monitoring is enabled for this field
        if (is_array($this->json) && in_array($key, $this->json, true)) {
            list($key, $value) = $this->jsonDecodeValues($key, $value);
        }
        // use the converter
        $value = Converter::runAll($value);
        $value = Converter::runCentrifuge($value, $this);
        // scan keys if activated via config
        $key = $this->scanKeys ? Converter::runAll($key) : $key;
        $key = $this->scanKeys ? Converter::runCentrifuge($key, $this) : $key;
        $filterSet = $this->storage->getFilterSet();
        if ($tags = $this->tags) {
            $filterSet = array_filter(
                $filterSet,
                function (Filter $filter) use ($tags) {
                    return (bool) array_intersect($tags, $filter->getTags());
                }
            );
        }
        $scanKeys = $this->scanKeys;
        $filterSet = array_filter(
            $filterSet,
            function (Filter $filter) use ($key, $value, $scanKeys) {
                return $filter->match($value) || $scanKeys && $filter->match($key);
            }
        );
        return $filterSet;
    }
    /**
     * Purifies given key and value variables using HTMLPurifier
     *
     * This function is needed whenever there is variables for which HTML
     * might be allowed like e.g. WYSIWYG post bodies. It will detect malicious
     * code fragments and leaves harmless parts untouched.
     *
     * @param mixed $key
     * @param mixed $value
     * @since  0.5
     * @throws \Exception
     *
     * @return array tuple [key,value]
     */
    private function purifyValues($key, $value)
    {
        /*
         * Perform a pre-check if string is valid for purification
         */
        if ($this->purifierPreCheck($key, $value)) {
            if (!is_writeable($this->HTMLPurifierCache)) {
                throw new \Exception($this->HTMLPurifierCache . ' must be writeable');
            }
            /** @var $config \HTMLPurifier_Config */
            $config = \HTMLPurifier_Config::createDefault();
            $config->set('Attr.EnableID', true);
            $config->set('Cache.SerializerPath', $this->HTMLPurifierCache);
            $config->set('Output.Newline', "\n");
            $this->htmlPurifier = new \HTMLPurifier($config);
            $value = preg_replace('([\x0b-\x0c])', ' ', $value);
            $key = preg_replace('([\x0b-\x0c])', ' ', $key);
            $purifiedValue = $this->htmlPurifier->purify($value);
            $purifiedKey   = $this->htmlPurifier->purify($key);
            $plainValue = strip_tags($value);
            $plainKey   = strip_tags($key);
            $value = $value != $purifiedValue || $plainValue ? $this->diff($value, $purifiedValue, $plainValue) : null;
            $key = $key != $purifiedKey ? $this->diff($key, $purifiedKey, $plainKey) : null;
        }
        return array($key, $value);
    }
    /**
     * This method makes sure no dangerous markup can be smuggled in
     * attributes when HTML mode is switched on.
     *
     * If the precheck considers the string too dangerous for
     * purification false is being returned.
     *
     * @param string $key
     * @param string $value
     * @since  0.6
     *
     * @return boolean
     */
    private function purifierPreCheck($key = '', $value = '')
    {
        /*
         * Remove control chars before pre-check
         */
        $tmpValue = preg_replace('/\p{C}/', null, $value);
        $tmpKey = preg_replace('/\p{C}/', null, $key);
        $preCheck = '/<(script|iframe|applet|object)\W/i';
        return !(preg_match($preCheck, $tmpKey) || preg_match($preCheck, $tmpValue));
    }
    /**
     * This method calculates the difference between the original
     * and the purified markup strings.
     *
     * @param string $original the original markup
     * @param string $purified the purified markup
     * @param string $plain    the string without html
     * @since 0.5
     *
     * @return string the difference between the strings
     */
    private function diff($original, $purified, $plain)
    {
        /*
         * deal with over-sensitive alt-attribute addition of the purifier
         * and other common html formatting problems
         */
        $purified = preg_replace('/\s+alt="[^"]*"/m', null, $purified);
        $purified = preg_replace('/=?\s*"\s*"/m', null, $purified);
        $original = preg_replace('/\s+alt="[^"]*"/m', null, $original);
        $original = preg_replace('/=?\s*"\s*"/m', null, $original);
        $original = preg_replace('/style\s*=\s*([^"])/m', 'style = "$1', $original);
        # deal with oversensitive CSS normalization
        $original = preg_replace('/(?:([\w\-]+:)+\s*([^;]+;\s*))/m', '$1$2', $original);
        # strip whitespace between tags
        $original = trim(preg_replace('/>\s*</m', '><', $original));
        $purified = trim(preg_replace('/>\s*</m', '><', $purified));
        $original = preg_replace('/(=\s*(["\'`])[^>"\'`]*>[^>"\'`]*["\'`])/m', 'alt$1', $original);
        // no purified html is left
        if (!$purified) {
            return $original;
        }
        // calculate the diff length
        $length = mb_strlen($original) - mb_strlen($purified);
        /*
         * Calculate the difference between the original html input
         * and the purified string.
         */
        $array1 = preg_split('/(?<!^)(?!$)/u', html_entity_decode(urldecode($original)));
        $array2 = preg_split('/(?<!^)(?!$)/u', $purified);
        // create an array containing the single character differences
        $differences = array_diff_assoc($array1, $array2);
        // return the diff - ready to hit the converter and the rules
        $differences = trim(implode('', $differences));
        $diff = $length <= 10 ? $differences : mb_substr($differences, 0, strlen($original));
        // clean up spaces between tag delimiters
        $diff = preg_replace('/>\s*</m', '><', $diff);
        // correct over-sensitively stripped bad html elements
        $diff = preg_replace('/[^<](iframe|script|embed|object|applet|base|img|style)/m', '<$1', $diff );
        return mb_strlen($diff) >= 4 ? $diff . $plain : null;
    }
    /**
     * This method prepares incoming JSON data for the PHPIDS detection
     * process. It utilizes _jsonConcatContents() as callback and returns a
     * string version of the JSON data structures.
     *
     * @param string $key
     * @param string $value
     * @since  0.5.3
     *
     * @return array tuple [key,value]
     */
    private function jsonDecodeValues($key, $value)
    {
        $decodedKey   = json_decode($key);
        $decodedValue = json_decode($value);
        if ($decodedValue && is_array($decodedValue) || is_object($decodedValue)) {
            array_walk_recursive($decodedValue, array($this, 'jsonConcatContents'));
            $value = $this->tmpJsonString;
        } else {
            $this->tmpJsonString .=  " " . $decodedValue . "\n";
        }
        if ($decodedKey && is_array($decodedKey) || is_object($decodedKey)) {
            array_walk_recursive($decodedKey, array($this, 'jsonConcatContents'));
            $key = $this->tmpJsonString;
        } else {
            $this->tmpJsonString .=  " " . $decodedKey . "\n";
        }
        return array($key, $value);
    }
    /**
     * This is the callback used in _jsonDecodeValues(). The method
     * concatenates key and value and stores them in $this->tmpJsonString.
     *
     * @param mixed $key
     * @param mixed $value
     * @since  0.5.3
     *
     * @return void
     */
    private function jsonConcatContents($key, $value)
    {
        if (is_string($key) && is_string($value)) {
            $this->tmpJsonString .=  $key . " " . $value . "\n";
        } else {
            $this->jsonDecodeValues(json_encode($key), json_encode($value));
        }
    }
    /**
     * Sets exception array
     *
     * @param string[]|string $exceptions the thrown exceptions
     *
     * @return void
     */
    public function setExceptions($exceptions)
    {
        $this->exceptions = (array) $exceptions;
    }
    /**
     * Returns exception array
     *
     * @return array
     */
    public function getExceptions()
    {
        return $this->exceptions;
    }
    /**
     * Sets html array
     *
     * @param string[]|string $html the fields containing html
     * @since 0.5
     *
     * @return void
     */
    public function setHtml($html)
    {
        $this->html = (array) $html;
    }
    /**
     * Adds a value to the html array
     *
     * @since 0.5
     *
     * @param mixed $value
     * @return void
     */
    public function addHtml($value)
    {
        $this->html[] = $value;
    }
    /**
     * Returns html array
     *
     * @since 0.5
     *
     * @return array the fields that contain allowed html
     */
    public function getHtml()
    {
        return $this->html;
    }
    /**
     * Sets json array
     *
     * @param string[]|string $json the fields containing json
     * @since 0.5.3
     *
     * @return void
     */
    public function setJson($json)
    {
        $this->json = (array) $json;
    }
    /**
     * Adds a value to the json array
     *
     * @param  string $value the value containing JSON data
     * @since  0.5.3
     *
     * @return void
     */
    public function addJson($value)
    {
        $this->json[] = $value;
    }
    /**
     * Returns json array
     *
     * @since 0.5.3
     *
     * @return array the fields that contain json
     */
    public function getJson()
    {
        return $this->json;
    }
    /**
     * Returns storage container
     *
     * @return array
     */
    public function getStorage()
    {
        return $this->storage;
    }
}
interface/lib/classes/IDS/Report.php
New file
@@ -0,0 +1,339 @@
<?php
/**
 * PHPIDS
 *
 * Requirements: PHP5, SimpleXML
 *
 * Copyright (c) 2008 PHPIDS group (https://phpids.org)
 *
 * PHPIDS is free software; you can redistribute it and/or modify
 * it under the terms of the GNU Lesser General Public License as published by
 * the Free Software Foundation, version 3 of the License, or
 * (at your option) any later version.
 *
 * PHPIDS 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 Lesser General Public License for more details.
 *
 * You should have received a copy of the GNU Lesser General Public License
 * along with PHPIDS. If not, see <http://www.gnu.org/licenses/>.
 *
 * PHP version 5.1.6+
 *
 * @category Security
 * @package  PHPIDS
 * @author   Mario Heiderich <mario.heiderich@gmail.com>
 * @author   Christian Matthies <ch0012@gmail.com>
 * @author   Lars Strojny <lars@strojny.net>
 * @license  http://www.gnu.org/licenses/lgpl.html LGPL
 * @link     http://php-ids.org/
 */
namespace IDS;
/**
 * PHPIDS report object
 *
 * The report objects collects a number of events and thereby presents the
 * detected results. It provides a convenient API to work with the results.
 *
 * Note that this class implements Countable, IteratorAggregate and
 * a __toString() method
 *
 * @category  Security
 * @package   PHPIDS
 * @author    Christian Matthies <ch0012@gmail.com>
 * @author    Mario Heiderich <mario.heiderich@gmail.com>
 * @author    Lars Strojny <lars@strojny.net>
 * @copyright 2007-2009 The PHPIDS Group
 * @license   http://www.gnu.org/licenses/lgpl.html LGPL
 * @link      http://php-ids.org/
 */
class Report implements \Countable, \IteratorAggregate
{
    /**
     * Event container
     *
     * @var Event[]|array
     */
    protected $events = array();
    /**
     * List of affected tags
     *
     * This list of tags is collected from the collected event objects on
     * demand when IDS_Report->getTags() is called
     *
     * @var string[]|array
     */
    protected $tags = array();
    /**
     * Impact level
     *
     * The impact level is calculated on demand by adding the results of the
     * event objects on IDS\Report->getImpact()
     *
     * @var integer
     */
    protected $impact = 0;
    /**
     * Centrifuge data
     *
     * This variable - initiated as an empty array - carries all information
     * about the centrifuge data if available
     *
     * @var array
     */
    protected $centrifuge = array();
    /**
     * Constructor
     *
     * @param array $events the events the report should include
     *
     * @return Report
     */
    public function __construct(array $events = null)
    {
        foreach ((array) $events as $event) {
            $this->addEvent($event);
        }
    }
    /**
     * Adds an IDS_Event object to the report
     *
     * @param Event $event IDS_Event
     *
     * @return self $this
     */
    public function addEvent(Event $event)
    {
        $this->clear();
        $this->events[$event->getName()] = $event;
        return $this;
    }
    /**
     * Get event by name
     *
     * In most cases an event is identified by the key of the variable that
     * contained maliciously appearing content
     *
     * @param string|integer $name the event name
     *
     * @throws \InvalidArgumentException if argument is invalid
     * @return Event|null                    IDS_Event object or false if the event does not exist
     */
    public function getEvent($name)
    {
        if (!is_scalar($name)) {
            throw new \InvalidArgumentException('Invalid argument type given');
        }
        return $this->hasEvent($name) ? $this->events[$name] : null;
    }
    /**
     * Returns list of events
     *
     * @return string[]|array
     */
    public function getEvents()
    {
        return $this->events;
    }
    /**
     * Returns list of affected tags
     *
     * @return string[]|array
     */
    public function getTags()
    {
        if (!$this->tags) {
            $this->tags = array();
            foreach ($this->events as $event) {
                $this->tags = array_merge($this->tags, $event->getTags());
            }
            $this->tags = array_values(array_unique($this->tags));
        }
        return $this->tags;
    }
    /**
     * Returns total impact
     *
     * Each stored IDS_Event object and its IDS_Filter sub-object are called
     * to calculate the overall impact level of this request
     *
     * @return integer
     */
    public function getImpact()
    {
        if (!$this->impact) {
            $this->impact = 0;
            foreach ($this->events as $event) {
                $this->impact += $event->getImpact();
            }
        }
        return $this->impact;
    }
    /**
     * Checks if a specific event with given name exists
     *
     * @param string|integer $name the event name
     *
     * @throws \InvalidArgumentException if argument is illegal
     * @return boolean
     */
    public function hasEvent($name)
    {
        if (!is_scalar($name)) {
            throw new \InvalidArgumentException('Invalid argument given');
        }
        return isset($this->events[$name]);
    }
    /**
     * Returns total amount of events
     *
     * @return integer
     */
    public function count()
    {
        return count($this->events);
    }
     /**
     * Return iterator object
     *
     * In order to provide the possibility to directly iterate over the
     * IDS_Event object the IteratorAggregate is implemented. One can easily
     * use foreach() to iterate through all stored IDS_Event objects.
     *
     * @return \Iterator the event collection
     */
    public function getIterator()
    {
        return new \ArrayIterator($this->events);
    }
    /**
     * Checks if any events are registered
     *
     * @return boolean
     */
    public function isEmpty()
    {
        return empty($this->events);
    }
    /**
     * Clears calculated/collected values
     *
     * @return void
     */
    protected function clear()
    {
        $this->impact = 0;
        $this->tags   = array();
    }
    /**
     * This method returns the centrifuge property or null if not
     * filled with data
     *
     * @return array
     */
    public function getCentrifuge()
    {
        return $this->centrifuge;
    }
    /**
     * This method sets the centrifuge property
     *
     * @param array $centrifuge the centrifuge data
     *
     * @throws \InvalidArgumentException if argument is illegal
     * @return void
     */
    public function setCentrifuge(array $centrifuge = array())
    {
        if (!$centrifuge) {
            throw new \InvalidArgumentException('Empty centrifuge given');
        }
        $this->centrifuge = $centrifuge;
    }
    /**
     * Directly outputs all available information
     *
     * @return string
     */
    public function __toString()
    {
        $output = '';
        if (!$this->isEmpty()) {
            $output .= vsprintf(
                "Total impact: %d<br/>\nAffected tags: %s<br/>\n",
                array(
                    $this->getImpact(),
                    implode(', ', $this->getTags())
                )
            );
            foreach ($this->events as $event) {
                $output .= vsprintf(
                    "<br/>\nVariable: %s | Value: %s<br/>\nImpact: %d | Tags: %s<br/>\n",
                    array(
                        htmlspecialchars($event->getName()),
                        htmlspecialchars($event->getValue()),
                        $event->getImpact(),
                        implode(', ', $event->getTags())
                    )
                );
                foreach ($event as $filter) {
                    $output .= vsprintf(
                        "Description: %s | Tags: %s | ID %s<br/>\n",
                        array(
                            $filter->getDescription(),
                            implode(', ', $filter->getTags()),
                            $filter->getId()
                        )
                    );
                }
            }
            $output .= '<br/>';
            if ($centrifuge = $this->getCentrifuge()) {
                $output .= vsprintf(
                    "Centrifuge detection data<br/> Threshold: %s<br/> Ratio: %s",
                    array(
                        isset($centrifuge['threshold']) && $centrifuge['threshold'] ? $centrifuge['threshold'] : '---',
                        isset($centrifuge['ratio']) && $centrifuge['ratio'] ? $centrifuge['ratio'] : '---'
                    )
                );
                if (isset($centrifuge['converted'])) {
                    $output .= '<br/>  Converted: ' . $centrifuge['converted'];
                }
                $output .= "<br/><br/>\n";
            }
        }
        return $output;
    }
}
interface/lib/classes/IDS/Version.php
New file
@@ -0,0 +1,49 @@
<?php
/**
 * PHPIDS
 *
 * Requirements: PHP5, SimpleXML
 *
 * Copyright (c) 2008 PHPIDS group (https://phpids.org)
 *
 * PHPIDS is free software; you can redistribute it and/or modify
 * it under the terms of the GNU Lesser General Public License as published by
 * the Free Software Foundation, version 3 of the License, or
 * (at your option) any later version.
 *
 * PHPIDS 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 Lesser General Public License for more details.
 *
 * You should have received a copy of the GNU Lesser General Public License
 * along with PHPIDS. If not, see <http://www.gnu.org/licenses/>.
 *
 * PHP version 5.1.6+
 *
 * @category Security
 * @package  PHPIDS
 * @author   Mario Heiderich <mario.heiderich@gmail.com>
 * @author   Christian Matthies <ch0012@gmail.com>
 * @author   Lars Strojny <lars@strojny.net>
 * @license  http://www.gnu.org/licenses/lgpl.html LGPL
 * @link     http://php-ids.org/
 */
namespace IDS;
/**
 * PHPIDS version class
 *
 * @category  Security
 * @package   PHPIDS
 * @author    Christian Matthies <ch0012@gmail.com>
 * @author    Mario Heiderich <mario.heiderich@gmail.com>
 * @author    Lars Strojny <lars@strojny.net>
 * @copyright 2007-2009 The PHPIDS Group
 * @license   http://www.gnu.org/licenses/lgpl.html LGPL
 * @link      http://php-ids.org/
 */
abstract class Version
{
    const VERSION = 'master';
}
interface/lib/classes/IDS/default_filter.json
New file
@@ -0,0 +1,933 @@
{
  "filters":{
    "filter":[
      {
        "id":"1",
        "rule":"(?:\"[^\"]*[^-]?>)|(?:[^\\w\\s]\\s*\\\/>)|(?:>\")",
        "description":"Finds html breaking injections including whitespace attacks",
        "tags":{
          "tag":[
            "xss",
            "csrf"
          ]
        },
        "impact":"4"
      },
      {
        "id":"2",
        "rule":"(?:\"+.*[<=]\\s*\"[^\"]+\")|(?:\"\\s*\\w+\\s*=)|(?:>\\w=\\\/)|(?:#.+\\)[\"\\s]*>)|(?:\"\\s*(?:src|style|on\\w+)\\s*=\\s*\")|(?:[^\"]?\"[,;\\s]+\\w*[\\[\\(])",
        "description":"Finds attribute breaking injections including whitespace attacks",
        "tags":{
          "tag":[
            "xss",
            "csrf"
          ]
        },
        "impact":"4"
      },
      {
        "id":"3",
        "rule":"(?:^>[\\w\\s]*<\\\/?\\w{2,}>)",
        "description":"Finds unquoted attribute breaking injections",
        "tags":{
          "tag":[
            "xss",
            "csrf"
          ]
        },
        "impact":"2"
      },
      {
        "id":"4",
        "rule":"(?:[+\\\/]\\s*name[\\W\\d]*[)+])|(?:;\\W*url\\s*=)|(?:[^\\w\\s\\\/?:>]\\s*(?:location|referrer|name)\\s*[^\\\/\\w\\s-])",
        "description":"Detects url-, name-, JSON, and referrer-contained payload attacks",
        "tags":{
          "tag":[
            "xss",
            "csrf"
          ]
        },
        "impact":"5"
      },
      {
        "id":"5",
        "rule":"(?:\\W\\s*hash\\s*[^\\w\\s-])|(?:\\w+=\\W*[^,]*,[^\\s(]\\s*\\()|(?:\\?\"[^\\s\"]\":)|(?:(?<!\\\/)__[a-z]+__)|(?:(?:^|[\\s)\\]\\}])(?:s|g)etter\\s*=)",
        "description":"Detects hash-contained xss payload attacks, setter usage and property overloading",
        "tags":{
          "tag":[
            "xss",
            "csrf"
          ]
        },
        "impact":"5"
      },
      {
        "id":"6",
        "rule":"(?:with\\s*\\(\\s*.+\\s*\\)\\s*\\w+\\s*\\()|(?:(?:do|while|for)\\s*\\([^)]*\\)\\s*\\{)|(?:\\\/[\\w\\s]*\\[\\W*\\w)",
        "description":"Detects self contained xss via with(), common loops and regex to string conversion",
        "tags":{
          "tag":[
            "xss",
            "csrf"
          ]
        },
        "impact":"5"
      },
      {
        "id":"7",
        "rule":"(?:[=(].+\\?.+:)|(?:with\\([^)]*\\)\\))|(?:\\.\\s*source\\W)",
        "description":"Detects JavaScript with(), ternary operators and XML predicate attacks",
        "tags":{
          "tag":[
            "xss",
            "csrf"
          ]
        },
        "impact":"5"
      },
      {
        "id":"8",
        "rule":"(?:\\\/\\w*\\s*\\)\\s*\\()|(?:\\([\\w\\s]+\\([\\w\\s]+\\)[\\w\\s]+\\))|(?:(?<!(?:mozilla\\\/\\d\\.\\d\\s))\\([^)[]+\\[[^\\]]+\\][^)]*\\))|(?:[^\\s!][{([][^({[]+[{([][^}\\])]+[}\\])][\\s+\",\\d]*[}\\])])|(?:\"\\)?\\]\\W*\\[)|(?:=\\s*[^\\s:;]+\\s*[{([][^}\\])]+[}\\])];)",
        "description":"Detects self-executing JavaScript functions",
        "tags":{
          "tag":[
            "xss",
            "csrf"
          ]
        },
        "impact":"5"
      },
      {
        "id":"9",
        "rule":"(?:\\\\u00[a-f0-9]{2})|(?:\\\\x0*[a-f0-9]{2})|(?:\\\\\\d{2,3})",
        "description":"Detects the IE octal, hex and unicode entities",
        "tags":{
          "tag":[
            "xss",
            "csrf"
          ]
        },
        "impact":"2"
      },
      {
        "id":"10",
        "rule":"(?:(?:\\\/|\\\\)?\\.+(\\\/|\\\\)(?:\\.+)?)|(?:\\w+\\.exe\\??\\s)|(?:;\\s*\\w+\\s*\\\/[\\w*-]+\\\/)|(?:\\d\\.\\dx\\|)|(?:%(?:c0\\.|af\\.|5c\\.))|(?:\\\/(?:%2e){2})",
        "description":"Detects basic directory traversal",
        "tags":{
          "tag":[
            "dt",
            "id",
            "lfi"
          ]
        },
        "impact":"5"
      },
      {
        "id":"11",
        "rule":"(?:%c0%ae\\\/)|(?:(?:\\\/|\\\\)(home|conf|usr|etc|proc|opt|s?bin|local|dev|tmp|kern|[br]oot|sys|system|windows|winnt|program|%[a-z_-]{3,}%)(?:\\\/|\\\\))|(?:(?:\\\/|\\\\)inetpub|localstart\\.asp|boot\\.ini)",
        "description":"Detects specific directory and path traversal",
        "tags":{
          "tag":[
            "dt",
            "id",
            "lfi"
          ]
        },
        "impact":"5"
      },
      {
        "id":"12",
        "rule":"(?:etc\\\/\\W*passwd)",
        "description":"Detects etc\/passwd inclusion attempts",
        "tags":{
          "tag":[
            "dt",
            "id",
            "lfi"
          ]
        },
        "impact":"5"
      },
      {
        "id":"13",
        "rule":"(?:%u(?:ff|00|e\\d)\\w\\w)|(?:(?:%(?:e\\w|c[^3\\W]|))(?:%\\w\\w)(?:%\\w\\w)?)",
        "description":"Detects halfwidth\/fullwidth encoded unicode HTML breaking attempts",
        "tags":{
          "tag":[
            "xss",
            "csrf"
          ]
        },
        "impact":"3"
      },
      {
        "id":"14",
        "rule":"(?:#@~\\^\\w+)|(?:\\w+script:|@import[^\\w]|;base64|base64,)|(?:\\w\\s*\\([\\w\\s]+,[\\w\\s]+,[\\w\\s]+,[\\w\\s]+,[\\w\\s]+,[\\w\\s]+\\))",
        "description":"Detects possible includes, VBSCript\/JScript encodeed and packed functions",
        "tags":{
          "tag":[
            "xss",
            "csrf",
            "id",
            "rfe"
          ]
        },
        "impact":"5"
      },
      {
        "id":"15",
        "rule":"([^*:\\s\\w,.\\\/?+-]\\s*)?(?<![a-z]\\s)(?<![a-z\\\/_@\\-\\|])(\\s*return\\s*)?(?:create(?:element|attribute|textnode)|[a-z]+events?|setattribute|getelement\\w+|appendchild|createrange|createcontextualfragment|removenode|parentnode|decodeuricomponent|\\wettimeout|(?:ms)?setimmediate|option|useragent)(?(1)[^\\w%\"]|(?:\\s*[^@\\s\\w%\",.+\\-]))",
        "description":"Detects JavaScript DOM\/miscellaneous properties and methods",
        "tags":{
          "tag":[
            "xss",
            "csrf",
            "id",
            "rfe"
          ]
        },
        "impact":"6"
      },
      {
        "id":"16",
        "rule":"([^*\\s\\w,.\\\/?+-]\\s*)?(?<![a-mo-z]\\s)(?<![a-z\\\/_@])(\\s*return\\s*)?(?:alert|inputbox|showmod(?:al|eless)dialog|showhelp|infinity|isnan|isnull|iterator|msgbox|executeglobal|expression|prompt|write(?:ln)?|confirm|dialog|urn|(?:un)?eval|exec|execscript|tostring|status|execute|window|unescape|navigate|jquery|getscript|extend|prototype)(?(1)[^\\w%\"]|(?:\\s*[^@\\s\\w%\",.:\\\/+\\-]))",
        "description":"Detects possible includes and typical script methods",
        "tags":{
          "tag":[
            "xss",
            "csrf",
            "id",
            "rfe"
          ]
        },
        "impact":"5"
      },
      {
        "id":"17",
        "rule":"([^*:\\s\\w,.\\\/?+-]\\s*)?(?<![a-z]\\s)(?<![a-z\\\/_@])(\\s*return\\s*)?(?:hash|name|href|navigateandfind|source|pathname|close|constructor|port|protocol|assign|replace|back|forward|document|ownerdocument|window|top|this|self|parent|frames|_?content|date|cookie|innerhtml|innertext|csstext+?|outerhtml|print|moveby|resizeto|createstylesheet|stylesheets)(?(1)[^\\w%\"]|(?:\\s*[^@\\\/\\s\\w%.+\\-]))",
        "description":"Detects JavaScript object properties and methods",
        "tags":{
          "tag":[
            "xss",
            "csrf",
            "id",
            "rfe"
          ]
        },
        "impact":"4"
      },
      {
        "id":"18",
        "rule":"([^*:\\s\\w,.\\\/?+-]\\s*)?(?<![a-z]\\s)(?<![a-z\\\/_@\\-\\|])(\\s*return\\s*)?(?:join|pop|push|reverse|reduce|concat|map|shift|sp?lice|sort|unshift)(?(1)[^\\w%\"]|(?:\\s*[^@\\s\\w%,.+\\-]))",
        "description":"Detects JavaScript array properties and methods",
        "tags":{
          "tag":[
            "xss",
            "csrf",
            "id",
            "rfe"
          ]
        },
        "impact":"4"
      },
      {
        "id":"19",
        "rule":"([^*:\\s\\w,.\\\/?+-]\\s*)?(?<![a-z]\\s)(?<![a-z\\\/_@\\-\\|])(\\s*return\\s*)?(?:set|atob|btoa|charat|charcodeat|charset|concat|crypto|frames|fromcharcode|indexof|lastindexof|match|navigator|toolbar|menubar|replace|regexp|slice|split|substr|substring|escape|\\w+codeuri\\w*)(?(1)[^\\w%\"]|(?:\\s*[^@\\s\\w%,.+\\-]))",
        "description":"Detects JavaScript string properties and methods",
        "tags":{
          "tag":[
            "xss",
            "csrf",
            "id",
            "rfe"
          ]
        },
        "impact":"4"
      },
      {
        "id":"20",
        "rule":"(?:\\)\\s*\\[)|([^*\":\\s\\w,.\\\/?+-]\\s*)?(?<![a-z]\\s)(?<![a-z_@\\|])(\\s*return\\s*)?(?:globalstorage|sessionstorage|postmessage|callee|constructor|content|domain|prototype|try|catch|top|call|apply|url|function|object|array|string|math|if|for\\s*(?:each)?|elseif|case|switch|regex|boolean|location|(?:ms)?setimmediate|settimeout|setinterval|void|setexpression|namespace|while)(?(1)[^\\w%\"]|(?:\\s*[^@\\s\\w%\".+\\-\\\/]))",
        "description":"Detects JavaScript language constructs",
        "tags":{
          "tag":[
            "xss",
            "csrf",
            "id",
            "rfe"
          ]
        },
        "impact":"4"
      },
      {
        "id":"21",
        "rule":"(?:,\\s*(?:alert|showmodaldialog|eval)\\s*,)|(?::\\s*eval\\s*[^\\s])|([^:\\s\\w,.\\\/?+-]\\s*)?(?<![a-z\\\/_@])(\\s*return\\s*)?(?:(?:document\\s*\\.)?(?:.+\\\/)?(?:alert|eval|msgbox|showmod(?:al|eless)dialog|showhelp|prompt|write(?:ln)?|confirm|dialog|open))\\s*(?:[^.a-z\\s\\-]|(?:\\s*[^\\s\\w,.@\\\/+-]))|(?:java[\\s\\\/]*\\.[\\s\\\/]*lang)|(?:\\w\\s*=\\s*new\\s+\\w+)|(?:&\\s*\\w+\\s*\\)[^,])|(?:\\+[\\W\\d]*new\\s+\\w+[\\W\\d]*\\+)|(?:document\\.\\w)",
        "description":"Detects very basic XSS probings",
        "tags":{
          "tag":[
            "xss",
            "csrf",
            "id",
            "rfe"
          ]
        },
        "impact":"3"
      },
      {
        "id":"22",
        "rule":"(?:=\\s*(?:top|this|window|content|self|frames|_content))|(?:\\\/\\s*[gimx]*\\s*[)}])|(?:[^\\s]\\s*=\\s*script)|(?:\\.\\s*constructor)|(?:default\\s+xml\\s+namespace\\s*=)|(?:\\\/\\s*\\+[^+]+\\s*\\+\\s*\\\/)",
        "description":"Detects advanced XSS probings via Script(), RexExp, constructors and XML namespaces",
        "tags":{
          "tag":[
            "xss",
            "csrf",
            "id",
            "rfe"
          ]
        },
        "impact":"5"
      },
      {
        "id":"23",
        "rule":"(?:\\.\\s*\\w+\\W*=)|(?:\\W\\s*(?:location|document)\\s*\\W[^({[;]+[({[;])|(?:\\(\\w+\\?[:\\w]+\\))|(?:\\w{2,}\\s*=\\s*\\d+[^&\\w]\\w+)|(?:\\]\\s*\\(\\s*\\w+)",
        "description":"Detects JavaScript location\/document property access and window access obfuscation",
        "tags":{
          "tag":[
            "xss",
            "csrf"
          ]
        },
        "impact":"5"
      },
      {
        "id":"24",
        "rule":"(?:[\".]script\\s*\\()|(?:\\$\\$?\\s*\\(\\s*[\\w\"])|(?:\\\/[\\w\\s]+\\\/\\.)|(?:=\\s*\\\/\\w+\\\/\\s*\\.)|(?:(?:this|window|top|parent|frames|self|content)\\[\\s*[(,\"]*\\s*[\\w\\$])|(?:,\\s*new\\s+\\w+\\s*[,;)])",
        "description":"Detects basic obfuscated JavaScript script injections",
        "tags":{
          "tag":[
            "xss",
            "csrf"
          ]
        },
        "impact":"5"
      },
      {
        "id":"25",
        "rule":"(?:=\\s*[$\\w]\\s*[\\(\\[])|(?:\\(\\s*(?:this|top|window|self|parent|_?content)\\s*\\))|(?:src\\s*=s*(?:\\w+:|\\\/\\\/))|(?:\\w+\\[(\"\\w+\"|\\w+\\|\\|))|(?:[\\d\\W]\\|\\|[\\d\\W]|\\W=\\w+,)|(?:\\\/\\s*\\+\\s*[a-z\"])|(?:=\\s*\\$[^([]*\\()|(?:=\\s*\\(\\s*\")",
        "description":"Detects obfuscated JavaScript script injections",
        "tags":{
          "tag":[
            "xss",
            "csrf"
          ]
        },
        "impact":"5"
      },
      {
        "id":"26",
        "rule":"(?:[^:\\s\\w]+\\s*[^\\w\\\/](href|protocol|host|hostname|pathname|hash|port|cookie)[^\\w])",
        "description":"Detects JavaScript cookie stealing and redirection attempts",
        "tags":{
          "tag":[
            "xss",
            "csrf"
          ]
        },
        "impact":"4"
      },
      {
        "id":"27",
        "rule":"(?:(?:vbs|vbscript|data):.*[,+])|(?:\\w+\\s*=\\W*(?!https?)\\w+:)|(jar:\\w+:)|(=\\s*\"?\\s*vbs(?:ript)?:)|(language\\s*=\\s?\"?\\s*vbs(?:ript)?)|on\\w+\\s*=\\*\\w+\\-\"?",
        "description":"Detects data: URL injections, VBS injections and common URI schemes",
        "tags":{
          "tag":[
            "xss",
            "rfe"
          ]
        },
        "impact":"5"
      },
      {
        "id":"28",
        "rule":"(?:firefoxurl:\\w+\\|)|(?:(?:file|res|telnet|nntp|news|mailto|chrome)\\s*:\\s*[%&#xu\\\/]+)|(wyciwyg|firefoxurl\\s*:\\s*\\\/\\s*\\\/)",
        "description":"Detects IE firefoxurl injections, cache poisoning attempts and local file inclusion\/execution",
        "tags":{
          "tag":[
            "xss",
            "rfe",
            "lfi",
            "csrf"
          ]
        },
        "impact":"5"
      },
      {
        "id":"29",
        "rule":"(?:binding\\s?=|moz-binding|behavior\\s?=)|(?:[\\s\\\/]style\\s*=\\s*[-\\\\])",
        "description":"Detects bindings and behavior injections",
        "tags":{
          "tag":[
            "xss",
            "csrf",
            "rfe"
          ]
        },
        "impact":"4"
      },
      {
        "id":"30",
        "rule":"(?:=\\s*\\w+\\s*\\+\\s*\")|(?:\\+=\\s*\\(\\s\")|(?:!+\\s*[\\d.,]+\\w?\\d*\\s*\\?)|(?:=\\s*\\[s*\\])|(?:\"\\s*\\+\\s*\")|(?:[^\\s]\\[\\s*\\d+\\s*\\]\\s*[;+])|(?:\"\\s*[&|]+\\s*\")|(?:\\\/\\s*\\?\\s*\")|(?:\\\/\\s*\\)\\s*\\[)|(?:\\d\\?.+:\\d)|(?:]\\s*\\[\\W*\\w)|(?:[^\\s]\\s*=\\s*\\\/)",
        "description":"Detects common XSS concatenation patterns 1\/2",
        "tags":{
          "tag":[
            "xss",
            "csrf",
            "id",
            "rfe"
          ]
        },
        "impact":"4"
      },
      {
        "id":"31",
        "rule":"(?:=\\s*\\d*\\.\\d*\\?\\d*\\.\\d*)|(?:[|&]{2,}\\s*\")|(?:!\\d+\\.\\d*\\?\")|(?:\\\/:[\\w.]+,)|(?:=[\\d\\W\\s]*\\[[^]]+\\])|(?:\\?\\w+:\\w+)",
        "description":"Detects common XSS concatenation patterns 2\/2",
        "tags":{
          "tag":[
            "xss",
            "csrf",
            "id",
            "rfe"
          ]
        },
        "impact":"4"
      },
      {
        "id":"32",
        "rule":"(?:[^\\w\\s=]on(?!g\\&gt;)\\w+[^=_+-]*=[^$]+(?:\\W|\\&gt;)?)",
        "description":"Detects possible event handlers",
        "tags":{
          "tag":[
            "xss",
            "csrf"
          ]
        },
        "impact":"4"
      },
      {
        "id":"33",
        "rule":"(?:\\<\\w*:?\\s(?:[^\\>]*)t(?!rong))|(?:\\<scri)|(<\\w+:\\w+)",
        "description":"Detects obfuscated script tags and XML wrapped HTML",
        "tags":{
          "tag":"xss"
        },
        "impact":"4"
      },
      {
        "id":"34",
        "rule":"(?:\\<\\\/\\w+\\s\\w+)|(?:@(?:cc_on|set)[\\s@,\"=])",
        "description":"Detects attributes in closing tags and conditional compilation tokens",
        "tags":{
          "tag":[
            "xss",
            "csrf"
          ]
        },
        "impact":"4"
      },
      {
        "id":"35",
        "rule":"(?:--[^\\n]*$)|(?:\\<!-|-->)|(?:[^*]\\\/\\*|\\*\\\/[^*])|(?:(?:[\\W\\d]#|--|{)$)|(?:\\\/{3,}.*$)|(?:<!\\[\\W)|(?:\\]!>)",
        "description":"Detects common comment types",
        "tags":{
          "tag":[
            "xss",
            "csrf",
            "id"
          ]
        },
        "impact":"3"
      },
      {
        "id":"37",
        "rule":"(?:\\<base\\s+)|(?:<!(?:element|entity|\\[CDATA))",
        "description":"Detects base href injections and XML entity injections",
        "tags":{
          "tag":[
            "xss",
            "csrf",
            "id"
          ]
        },
        "impact":"5"
      },
      {
        "id":"38",
        "rule":"(?:\\<[\\\/]?(?:[i]?frame|applet|isindex|marquee|keygen|script|audio|video|input|button|textarea|style|base|body|meta|link|object|embed|param|plaintext|xm\\w+|image|im(?:g|port)))",
        "description":"Detects possibly malicious html elements including some attributes",
        "tags":{
          "tag":[
            "xss",
            "csrf",
            "id",
            "rfe",
            "lfi"
          ]
        },
        "impact":"4"
      },
      {
        "id":"39",
        "rule":"(?:\\\\x[01fe][\\db-ce-f])|(?:%[01fe][\\db-ce-f])|(?:&#[01fe][\\db-ce-f])|(?:\\\\[01fe][\\db-ce-f])|(?:&#x[01fe][\\db-ce-f])",
        "description":"Detects nullbytes and other dangerous characters",
        "tags":{
          "tag":[
            "id",
            "rfe",
            "xss"
          ]
        },
        "impact":"5"
      },
      {
        "id":"40",
        "rule":"(?:\\)\\s*when\\s*\\d+\\s*then)|(?:\"\\s*(?:#|--|{))|(?:\\\/\\*!\\s?\\d+)|(?:ch(?:a)?r\\s*\\(\\s*\\d)|(?:(?:(n?and|x?or|not)\\s+|\\|\\||\\&\\&)\\s*\\w+\\()",
        "description":"Detects MySQL comments, conditions and ch(a)r injections",
        "tags":{
          "tag":[
            "sqli",
            "id",
            "lfi"
          ]
        },
        "impact":"6"
      },
      {
        "id":"41",
        "rule":"(?:[\\s()]case\\s*\\()|(?:\\)\\s*like\\s*\\()|(?:having\\s*[^\\s]+\\s*[^\\w\\s])|(?:if\\s?\\([\\d\\w]\\s*[=<>~])",
        "description":"Detects conditional SQL injection attempts",
        "tags":{
          "tag":[
            "sqli",
            "id",
            "lfi"
          ]
        },
        "impact":"6"
      },
      {
        "id":"42",
        "rule":"(?:\"\\s*or\\s*\"?\\d)|(?:\\\\x(?:23|27|3d))|(?:^.?\"$)|(?:(?:^[\"\\\\]*(?:[\\d\"]+|[^\"]+\"))+\\s*(?:n?and|x?or|not|\\|\\||\\&\\&)\\s*[\\w\"[+&!@(),.-])|(?:[^\\w\\s]\\w+\\s*[|-]\\s*\"\\s*\\w)|(?:@\\w+\\s+(and|or)\\s*[\"\\d]+)|(?:@[\\w-]+\\s(and|or)\\s*[^\\w\\s])|(?:[^\\w\\s:]\\s*\\d\\W+[^\\w\\s]\\s*\".)|(?:\\Winformation_schema|table_name\\W)",
        "description":"Detects classic SQL injection probings 1\/2",
        "tags":{
          "tag":[
            "sqli",
            "id",
            "lfi"
          ]
        },
        "impact":"6"
      },
      {
        "id":"43",
        "rule":"(?:\"\\s*\\*.+(?:or|id)\\W*\"\\d)|(?:\\^\")|(?:^[\\w\\s\"-]+(?<=and\\s)(?<=or\\s)(?<=xor\\s)(?<=nand\\s)(?<=not\\s)(?<=\\|\\|)(?<=\\&\\&)\\w+\\()|(?:\"[\\s\\d]*[^\\w\\s]+\\W*\\d\\W*.*[\"\\d])|(?:\"\\s*[^\\w\\s?]+\\s*[^\\w\\s]+\\s*\")|(?:\"\\s*[^\\w\\s]+\\s*[\\W\\d].*(?:#|--))|(?:\".*\\*\\s*\\d)|(?:\"\\s*or\\s[^\\d]+[\\w-]+.*\\d)|(?:[()*<>%+-][\\w-]+[^\\w\\s]+\"[^,])",
        "description":"Detects classic SQL injection probings 2\/2",
        "tags":{
          "tag":[
            "sqli",
            "id",
            "lfi"
          ]
        },
        "impact":"6"
      },
      {
        "id":"44",
        "rule":"(?:\\d\"\\s+\"\\s+\\d)|(?:^admin\\s*\"|(\\\/\\*)+\"+\\s?(?:--|#|\\\/\\*|{)?)|(?:\"\\s*or[\\w\\s-]+\\s*[+<>=(),-]\\s*[\\d\"])|(?:\"\\s*[^\\w\\s]?=\\s*\")|(?:\"\\W*[+=]+\\W*\")|(?:\"\\s*[!=|][\\d\\s!=+-]+.*[\"(].*$)|(?:\"\\s*[!=|][\\d\\s!=]+.*\\d+$)|(?:\"\\s*like\\W+[\\w\"(])|(?:\\sis\\s*0\\W)|(?:where\\s[\\s\\w\\.,-]+\\s=)|(?:\"[<>~]+\")",
        "description":"Detects basic SQL authentication bypass attempts 1\/3",
        "tags":{
          "tag":[
            "sqli",
            "id",
            "lfi"
          ]
        },
        "impact":"7"
      },
      {
        "id":"45",
        "rule":"(?:union\\s*(?:all|distinct|[(!@]*)\\s*[([]*\\s*select)|(?:\\w+\\s+like\\s+\\\")|(?:like\\s*\"\\%)|(?:\"\\s*like\\W*[\"\\d])|(?:\"\\s*(?:n?and|x?or|not |\\|\\||\\&\\&)\\s+[\\s\\w]+=\\s*\\w+\\s*having)|(?:\"\\s*\\*\\s*\\w+\\W+\")|(?:\"\\s*[^?\\w\\s=.,;)(]+\\s*[(@\"]*\\s*\\w+\\W+\\w)|(?:select\\s*[\\[\\]()\\s\\w\\.,\"-]+from)|(?:find_in_set\\s*\\()",
        "description":"Detects basic SQL authentication bypass attempts 2\/3",
        "tags":{
          "tag":[
            "sqli",
            "id",
            "lfi"
          ]
        },
        "impact":"7"
      },
      {
        "id":"46",
        "rule":"(?:in\\s*\\(+\\s*select)|(?:(?:n?and|x?or|not |\\|\\||\\&\\&)\\s+[\\s\\w+]+(?:regexp\\s*\\(|sounds\\s+like\\s*\"|[=\\d]+x))|(\"\\s*\\d\\s*(?:--|#))|(?:\"[%&<>^=]+\\d\\s*(=|or))|(?:\"\\W+[\\w+-]+\\s*=\\s*\\d\\W+\")|(?:\"\\s*is\\s*\\d.+\"?\\w)|(?:\"\\|?[\\w-]{3,}[^\\w\\s.,]+\")|(?:\"\\s*is\\s*[\\d.]+\\s*\\W.*\")",
        "description":"Detects basic SQL authentication bypass attempts 3\/3",
        "tags":{
          "tag":[
            "sqli",
            "id",
            "lfi"
          ]
        },
        "impact":"7"
      },
      {
        "id":"47",
        "rule":"(?:[\\d\\W]\\s+as\\s*[\"\\w]+\\s*from)|(?:^[\\W\\d]+\\s*(?:union|select|create|rename|truncate|load|alter|delete|update|insert|desc))|(?:(?:select|create|rename|truncate|load|alter|delete|update|insert|desc)\\s+(?:(?:group_)concat|char|load_file)\\s?\\(?)|(?:end\\s*\\);)|(\"\\s+regexp\\W)|(?:[\\s(]load_file\\s*\\()",
        "description":"Detects concatenated basic SQL injection and SQLLFI attempts",
        "tags":{
          "tag":[
            "sqli",
            "id",
            "lfi"
          ]
        },
        "impact":"5"
      },
      {
        "id":"48",
        "rule":"(?:@.+=\\s*\\(\\s*select)|(?:\\d+\\s*or\\s*\\d+\\s*[\\-+])|(?:\\\/\\w+;?\\s+(?:having|and|or|select)\\W)|(?:\\d\\s+group\\s+by.+\\()|(?:(?:;|#|--)\\s*(?:drop|alter))|(?:(?:;|#|--)\\s*(?:update|insert)\\s*\\w{2,})|(?:[^\\w]SET\\s*@\\w+)|(?:(?:n?and|x?or|not |\\|\\||\\&\\&)[\\s(]+\\w+[\\s)]*[!=+]+[\\s\\d]*[\"=()])",
        "description":"Detects chained SQL injection attempts 1\/2",
        "tags":{
          "tag":[
            "sqli",
            "id"
          ]
        },
        "impact":"6"
      },
      {
        "id":"49",
        "rule":"(?:\"\\s+and\\s*=\\W)|(?:\\(\\s*select\\s*\\w+\\s*\\()|(?:\\*\\\/from)|(?:\\+\\s*\\d+\\s*\\+\\s*@)|(?:\\w\"\\s*(?:[-+=|@]+\\s*)+[\\d(])|(?:coalesce\\s*\\(|@@\\w+\\s*[^\\w\\s])|(?:\\W!+\"\\w)|(?:\";\\s*(?:if|while|begin))|(?:\"[\\s\\d]+=\\s*\\d)|(?:order\\s+by\\s+if\\w*\\s*\\()|(?:[\\s(]+case\\d*\\W.+[tw]hen[\\s(])",
        "description":"Detects chained SQL injection attempts 2\/2",
        "tags":{
          "tag":[
            "sqli",
            "id"
          ]
        },
        "impact":"6"
      },
      {
        "id":"50",
        "rule":"(?:(select|;)\\s+(?:benchmark|if|sleep)\\s*?\\(\\s*\\(?\\s*\\w+)",
        "description":"Detects SQL benchmark and sleep injection attempts including conditional queries",
        "tags":{
          "tag":[
            "sqli",
            "id"
          ]
        },
        "impact":"4"
      },
      {
        "id":"51",
        "rule":"(?:create\\s+function\\s+\\w+\\s+returns)|(?:;\\s*(?:select|create|rename|truncate|load|alter|delete|update|insert|desc)\\s*[\\[(]?\\w{2,})",
        "description":"Detects MySQL UDF injection and other data\/structure manipulation attempts",
        "tags":{
          "tag":[
            "sqli",
            "id"
          ]
        },
        "impact":"6"
      },
      {
        "id":"52",
        "rule":"(?:alter\\s*\\w+.*character\\s+set\\s+\\w+)|(\";\\s*waitfor\\s+time\\s+\")|(?:\";.*:\\s*goto)",
        "description":"Detects MySQL charset switch and MSSQL DoS attempts",
        "tags":{
          "tag":[
            "sqli",
            "id"
          ]
        },
        "impact":"6"
      },
      {
        "id":"53",
        "rule":"(?:procedure\\s+analyse\\s*\\()|(?:;\\s*(declare|open)\\s+[\\w-]+)|(?:create\\s+(procedure|function)\\s*\\w+\\s*\\(\\s*\\)\\s*-)|(?:declare[^\\w]+[@#]\\s*\\w+)|(exec\\s*\\(\\s*@)",
        "description":"Detects MySQL and PostgreSQL stored procedure\/function injections",
        "tags":{
          "tag":[
            "sqli",
            "id"
          ]
        },
        "impact":"7"
      },
      {
        "id":"54",
        "rule":"(?:select\\s*pg_sleep)|(?:waitfor\\s*delay\\s?\"+\\s?\\d)|(?:;\\s*shutdown\\s*(?:;|--|#|\\\/\\*|{))",
        "description":"Detects Postgres pg_sleep injection, waitfor delay attacks and database shutdown attempts",
        "tags":{
          "tag":[
            "sqli",
            "id"
          ]
        },
        "impact":"5"
      },
      {
        "id":"55",
        "rule":"(?:\\sexec\\s+xp_cmdshell)|(?:\"\\s*!\\s*[\"\\w])|(?:from\\W+information_schema\\W)|(?:(?:(?:current_)?user|database|schema|connection_id)\\s*\\([^\\)]*)|(?:\";?\\s*(?:select|union|having)\\s*[^\\s])|(?:\\wiif\\s*\\()|(?:exec\\s+master\\.)|(?:union select @)|(?:union[\\w(\\s]*select)|(?:select.*\\w?user\\()|(?:into[\\s+]+(?:dump|out)file\\s*\")",
        "description":"Detects MSSQL code execution and information gathering attempts",
        "tags":{
          "tag":[
            "sqli",
            "id"
          ]
        },
        "impact":"5"
      },
      {
        "id":"56",
        "rule":"(?:merge.*using\\s*\\()|(execute\\s*immediate\\s*\")|(?:\\W+\\d*\\s*having\\s*[^\\s\\-])|(?:match\\s*[\\w(),+-]+\\s*against\\s*\\()",
        "description":"Detects MATCH AGAINST, MERGE, EXECUTE IMMEDIATE and HAVING injections",
        "tags":{
          "tag":[
            "sqli",
            "id"
          ]
        },
        "impact":"5"
      },
      {
        "id":"57",
        "rule":"(?:,.*[)\\da-f\"]\"(?:\".*\"|\\Z|[^\"]+))|(?:\\Wselect.+\\W*from)|((?:select|create|rename|truncate|load|alter|delete|update|insert|desc)\\s*\\(\\s*space\\s*\\()",
        "description":"Detects MySQL comment-\/space-obfuscated injections and backtick termination",
        "tags":{
          "tag":[
            "sqli",
            "id"
          ]
        },
        "impact":"5"
      },
      {
        "id":"58",
        "rule":"(?:@[\\w-]+\\s*\\()|(?:]\\s*\\(\\s*[\"!]\\s*\\w)|(?:<[?%](?:php)?.*(?:[?%]>)?)|(?:;[\\s\\w|]*\\$\\w+\\s*=)|(?:\\$\\w+\\s*=(?:(?:\\s*\\$?\\w+\\s*[(;])|\\s*\".*\"))|(?:;\\s*\\{\\W*\\w+\\s*\\()",
        "description":"Detects code injection attempts 1\/3",
        "tags":{
          "tag":[
            "id",
            "rfe",
            "lfi"
          ]
        },
        "impact":"7"
      },
      {
        "id":"59",
        "rule":"(?:(?:[;]+|(<[?%](?:php)?)).*(?:define|eval|file_get_contents|include|require|require_once|set|shell_exec|phpinfo|system|passthru|preg_\\w+|execute)\\s*[\"(@])",
        "description":"Detects code injection attempts 2\/3",
        "tags":{
          "tag":[
            "id",
            "rfe",
            "lfi"
          ]
        },
        "impact":"7"
      },
      {
        "id":"60",
        "rule":"(?:(?:[;]+|(<[?%](?:php)?)).*[^\\w](?:echo|print|print_r|var_dump|[fp]open))|(?:;\\s*rm\\s+-\\w+\\s+)|(?:;.*{.*\\$\\w+\\s*=)|(?:\\$\\w+\\s*\\[\\]\\s*=\\s*)",
        "description":"Detects code injection attempts 3\/3",
        "tags":{
          "tag":[
            "id",
            "rfe",
            "lfi"
          ]
        },
        "impact":"7"
      },
      {
        "id":"62",
        "rule":"(?:function[^(]*\\([^)]*\\))|(?:(?:delete|void|throw|instanceof|new|typeof)[^\\w.]+\\w+\\s*[([])|([)\\]]\\s*\\.\\s*\\w+\\s*=)|(?:\\(\\s*new\\s+\\w+\\s*\\)\\.)",
        "description":"Detects common function declarations and special JS operators",
        "tags":{
          "tag":[
            "id",
            "rfe",
            "lfi"
          ]
        },
        "impact":"5"
      },
      {
        "id":"63",
        "rule":"(?:[\\w.-]+@[\\w.-]+%(?:[01][\\db-ce-f])+\\w+:)",
        "description":"Detects common mail header injections",
        "tags":{
          "tag":[
            "id",
            "spam"
          ]
        },
        "impact":"5"
      },
      {
        "id":"64",
        "rule":"(?:\\.pl\\?\\w+=\\w?\\|\\w+;)|(?:\\|\\(\\w+=\\*)|(?:\\*\\s*\\)+\\s*;)",
        "description":"Detects perl echo shellcode injection and LDAP vectors",
        "tags":{
          "tag":[
            "lfi",
            "rfe"
          ]
        },
        "impact":"5"
      },
      {
        "id":"65",
        "rule":"(?:(^|\\W)const\\s+[\\w\\-]+\\s*=)|(?:(?:do|for|while)\\s*\\([^;]+;+\\))|(?:(?:^|\\W)on\\w+\\s*=[\\w\\W]*(?:on\\w+|alert|eval|print|confirm|prompt))|(?:groups=\\d+\\(\\w+\\))|(?:(.)\\1{128,})",
        "description":"Detects basic XSS DoS attempts",
        "tags":{
          "tag":[
            "rfe",
            "dos"
          ]
        },
        "impact":"5"
      },
      {
        "id":"67",
        "rule":"(?:\\({2,}\\+{2,}:{2,})|(?:\\({2,}\\+{2,}:+)|(?:\\({3,}\\++:{2,})|(?:\\$\\[!!!\\])",
        "description":"Detects unknown attack vectors based on PHPIDS Centrifuge detection",
        "tags":{
          "tag":[
            "xss",
            "csrf",
            "id",
            "rfe",
            "lfi"
          ]
        },
        "impact":"7"
      },
      {
        "id":"68",
        "rule":"(?:[\\s\\\/\"]+[-\\w\\\/\\\\\\*]+\\s*=.+(?:\\\/\\s*>))",
        "description":"Finds attribute breaking injections including obfuscated attributes",
        "tags":{
          "tag":[
            "xss",
            "csrf"
          ]
        },
        "impact":"4"
      },
      {
        "id":"69",
        "rule":"(?:(?:msgbox|eval)\\s*\\+|(?:language\\s*=\\*vbscript))",
        "description":"Finds basic VBScript injection attempts",
        "tags":{
          "tag":[
            "xss",
            "csrf"
          ]
        },
        "impact":"4"
      },
      {
        "id":"70",
        "rule":"(?:\\[\\$(?:ne|eq|lte?|gte?|n?in|mod|all|size|exists|type|slice|or)\\])",
        "description":"Finds basic MongoDB SQL injection attempts",
        "tags":{
          "tag":"sqli"
        },
        "impact":"4"
      },
      {
        "id":"71",
        "rule":"(?:[\\s\\d\\\/\"]+(?:on\\w+|style|poster|background)=[$\"\\w])|(?:-type\\s*:\\s*multipart)",
        "description":"Finds malicious attribute injection attempts and MHTML attacks",
        "tags":{
          "tag":[
            "xss",
            "csrf"
          ]
        },
        "impact":"6"
      },
      {
        "id":"72",
        "rule":"(?:(sleep\\((\\s*)(\\d*)(\\s*)\\)|benchmark\\((.*)\\,(.*)\\)))",
        "description":"Detects blind sqli tests using sleep() or benchmark().",
        "tags":{
          "tag":[
            "sqli",
            "id"
          ]
        },
        "impact":"4"
      },
      {
        "id":"73",
        "rule":"(?:(\\%SYSTEMROOT\\%))",
        "description":"An attacker is trying to locate a file to read or write.",
        "tags":{
          "tag":[
            "files",
            "id"
          ]
        },
        "impact":"4"
      },
      {
        "id":"75",
        "rule":"(?:(((.*)\\%[c|d|i|e|f|g|o|s|u|x|p|n]){8}))",
        "description":"Looking for a format string attack",
        "tags":{
          "tag":"format string"
        },
        "impact":"4"
      },
      {
        "id":"76",
        "rule":"(?:(union(.*)select(.*)from))",
        "description":"Looking for basic sql injection. Common attack string for mysql, oracle and others.",
        "tags":{
          "tag":[
            "sqli",
            "id"
          ]
        },
        "impact":"3"
      },
      {
        "id":"77",
        "rule":"(?:^(-0000023456|4294967295|4294967296|2147483648|2147483647|0000012345|-2147483648|-2147483649|0000023456|2.2250738585072007e-308|1e309)$)",
        "description":"Looking for integer overflow attacks, these are taken from skipfish, except 2.2250738585072007e-308 is the \"magic number\" crash",
        "tags":{
          "tag":[
            "sqli",
            "id"
          ]
        },
        "impact":"3"
      },
      {
        "id":"78",
        "rule":"(?:%23.*?%0a)",
        "description":"Detects SQL comment filter evasion",
        "tags":{
          "tag":[
            "format string"
          ]
        },
        "impact":"4"
      }
    ]
  }
}
interface/lib/classes/IDS/default_filter.xml
New file
@@ -0,0 +1,787 @@
<filters>
    <filter>
        <id>1</id>
        <rule><![CDATA[(?:"[^"]*[^-]?>)|(?:[^\w\s]\s*\/>)|(?:>")]]></rule>
        <description>Finds html breaking injections including whitespace attacks</description>
        <tags>
            <tag>xss</tag>
            <tag>csrf</tag>
        </tags>
        <impact>4</impact>
    </filter>
    <filter>
        <id>2</id>
        <rule><![CDATA[(?:"+.*[<=]\s*"[^"]+")|(?:"\s*\w+\s*=)|(?:>\w=\/)|(?:#.+\)["\s]*>)|(?:"\s*(?:src|style|on\w+)\s*=\s*")|(?:[^"]?"[,;\s]+\w*[\[\(])]]></rule>
        <description>Finds attribute breaking injections including whitespace attacks</description>
        <tags>
            <tag>xss</tag>
            <tag>csrf</tag>
        </tags>
        <impact>4</impact>
    </filter>
    <filter>
        <id>3</id>
        <rule><![CDATA[(?:^>[\w\s]*<\/?\w{2,}>)]]></rule>
        <description>Finds unquoted attribute breaking injections</description>
        <tags>
            <tag>xss</tag>
            <tag>csrf</tag>
        </tags>
        <impact>2</impact>
    </filter>
    <filter>
        <id>4</id>
        <rule><![CDATA[(?:[+\/]\s*name[\W\d]*[)+])|(?:;\W*url\s*=)|(?:[^\w\s\/?:>]\s*(?:location|referrer|name)\s*[^\/\w\s-])]]></rule>
        <description>Detects url-, name-, JSON, and referrer-contained payload attacks</description>
        <tags>
            <tag>xss</tag>
            <tag>csrf</tag>
        </tags>
        <impact>5</impact>
    </filter>
    <filter>
        <id>5</id>
        <rule><![CDATA[(?:\W\s*hash\s*[^\w\s-])|(?:\w+=\W*[^,]*,[^\s(]\s*\()|(?:\?"[^\s"]":)|(?:(?<!\/)__[a-z]+__)|(?:(?:^|[\s)\]\}])(?:s|g)etter\s*=)]]></rule>
        <description>Detects hash-contained xss payload attacks, setter usage and property overloading</description>
        <tags>
            <tag>xss</tag>
            <tag>csrf</tag>
        </tags>
        <impact>5</impact>
    </filter>
    <filter>
        <id>6</id>
        <rule><![CDATA[(?:with\s*\(\s*.+\s*\)\s*\w+\s*\()|(?:(?:do|while|for)\s*\([^)]*\)\s*\{)|(?:\/[\w\s]*\[\W*\w)]]></rule>
        <description>Detects self contained xss via with(), common loops and regex to string conversion</description>
        <tags>
            <tag>xss</tag>
            <tag>csrf</tag>
        </tags>
        <impact>5</impact>
    </filter>
    <filter>
        <id>7</id>
        <rule><![CDATA[(?:[=(].+\?.+:)|(?:with\([^)]*\)\))|(?:\.\s*source\W)]]></rule>
        <description>Detects JavaScript with(), ternary operators and XML predicate attacks</description>
        <tags>
            <tag>xss</tag>
            <tag>csrf</tag>
        </tags>
        <impact>5</impact>
    </filter>
    <filter>
        <id>8</id>
        <rule><![CDATA[(?:\/\w*\s*\)\s*\()|(?:\([\w\s]+\([\w\s]+\)[\w\s]+\))|(?:(?<!(?:mozilla\/\d\.\d\s))\([^)[]+\[[^\]]+\][^)]*\))|(?:[^\s!][{([][^({[]+[{([][^}\])]+[}\])][\s+",\d]*[}\])])|(?:"\)?\]\W*\[)|(?:=\s*[^\s:;]+\s*[{([][^}\])]+[}\])];)]]></rule>
        <description>Detects self-executing JavaScript functions</description>
        <tags>
            <tag>xss</tag>
            <tag>csrf</tag>
        </tags>
        <impact>5</impact>
    </filter>
    <filter>
        <id>9</id>
        <rule><![CDATA[(?:\\u00[a-f0-9]{2})|(?:\\x0*[a-f0-9]{2})|(?:\\\d{2,3})]]></rule>
        <description>Detects the IE octal, hex and unicode entities</description>
        <tags>
            <tag>xss</tag>
            <tag>csrf</tag>
        </tags>
        <impact>2</impact>
    </filter>
    <filter>
        <id>10</id>
        <rule><![CDATA[(?:(?:\/|\\)?\.+(\/|\\)(?:\.+)?)|(?:\w+\.exe\??\s)|(?:;\s*\w+\s*\/[\w*-]+\/)|(?:\d\.\dx\|)|(?:%(?:c0\.|af\.|5c\.))|(?:\/(?:%2e){2})]]></rule>
        <description>Detects basic directory traversal</description>
        <tags>
            <tag>dt</tag>
            <tag>id</tag>
            <tag>lfi</tag>
        </tags>
        <impact>5</impact>
    </filter>
    <filter>
        <id>11</id>
        <rule><![CDATA[(?:%c0%ae\/)|(?:(?:\/|\\)(home|conf|usr|etc|proc|opt|s?bin|local|dev|tmp|kern|[br]oot|sys|system|windows|winnt|program|%[a-z_-]{3,}%)(?:\/|\\))|(?:(?:\/|\\)inetpub|localstart\.asp|boot\.ini)]]></rule>
        <description>Detects specific directory and path traversal</description>
        <tags>
            <tag>dt</tag>
            <tag>id</tag>
            <tag>lfi</tag>
        </tags>
        <impact>5</impact>
    </filter>
    <filter>
        <id>12</id>
        <rule><![CDATA[(?:etc\/\W*passwd)]]></rule>
        <description>Detects etc/passwd inclusion attempts</description>
        <tags>
            <tag>dt</tag>
            <tag>id</tag>
            <tag>lfi</tag>
        </tags>
        <impact>5</impact>
    </filter>
    <filter>
        <id>13</id>
        <rule><![CDATA[(?:%u(?:ff|00|e\d)\w\w)|(?:(?:%(?:e\w|c[^3\W]|))(?:%\w\w)(?:%\w\w)?)]]></rule>
        <description>Detects halfwidth/fullwidth encoded unicode HTML breaking attempts</description>
        <tags>
            <tag>xss</tag>
            <tag>csrf</tag>
        </tags>
        <impact>3</impact>
    </filter>
    <filter>
        <id>14</id>
        <rule><![CDATA[(?:#@~\^\w+)|(?:\w+script:|@import[^\w]|;base64|base64,)|(?:\w\s*\([\w\s]+,[\w\s]+,[\w\s]+,[\w\s]+,[\w\s]+,[\w\s]+\))]]></rule>
        <description>Detects possible includes, VBSCript/JScript encodeed and packed functions</description>
        <tags>
            <tag>xss</tag>
            <tag>csrf</tag>
            <tag>id</tag>
            <tag>rfe</tag>
        </tags>
        <impact>5</impact>
    </filter>
    <filter>
        <id>15</id>
        <rule><![CDATA[([^*:\s\w,.\/?+-]\s*)?(?<![a-z]\s)(?<![a-z\/_@\-\|])(\s*return\s*)?(?:create(?:element|attribute|textnode)|[a-z]+events?|setattribute|getelement\w+|appendchild|createrange|createcontextualfragment|removenode|parentnode|decodeuricomponent|\wettimeout|(?:ms)?setimmediate|option|useragent)(?(1)[^\w%"]|(?:\s*[^@\s\w%",.+\-]))]]></rule>
        <description>Detects JavaScript DOM/miscellaneous properties and methods</description>
        <tags>
            <tag>xss</tag>
            <tag>csrf</tag>
            <tag>id</tag>
            <tag>rfe</tag>
        </tags>
        <impact>6</impact>
    </filter>
    <filter>
        <id>16</id>
        <rule><![CDATA[([^*\s\w,.\/?+-]\s*)?(?<![a-mo-z]\s)(?<![a-z\/_@])(\s*return\s*)?(?:alert|inputbox|showmod(?:al|eless)dialog|showhelp|infinity|isnan|isnull|iterator|msgbox|executeglobal|expression|prompt|write(?:ln)?|confirm|dialog|urn|(?:un)?eval|exec|execscript|tostring|status|execute|window|unescape|navigate|jquery|getscript|extend|prototype)(?(1)[^\w%"]|(?:\s*[^@\s\w%",.:\/+\-]))]]></rule>
        <description>Detects possible includes and typical script methods</description>
        <tags>
            <tag>xss</tag>
            <tag>csrf</tag>
            <tag>id</tag>
            <tag>rfe</tag>
        </tags>
        <impact>5</impact>
    </filter>
    <filter>
        <id>17</id>
        <rule><![CDATA[([^*:\s\w,.\/?+-]\s*)?(?<![a-z]\s)(?<![a-z\/_@])(\s*return\s*)?(?:hash|name|href|navigateandfind|source|pathname|close|constructor|port|protocol|assign|replace|back|forward|document|ownerdocument|window|top|this|self|parent|frames|_?content|date|cookie|innerhtml|innertext|csstext+?|outerhtml|print|moveby|resizeto|createstylesheet|stylesheets)(?(1)[^\w%"]|(?:\s*[^@\/\s\w%.+\-]))]]></rule>
        <description>Detects JavaScript object properties and methods</description>
        <tags>
            <tag>xss</tag>
            <tag>csrf</tag>
            <tag>id</tag>
            <tag>rfe</tag>
        </tags>
        <impact>4</impact>
    </filter>
    <filter>
        <id>18</id>
        <rule><![CDATA[([^*:\s\w,.\/?+-]\s*)?(?<![a-z]\s)(?<![a-z\/_@\-\|])(\s*return\s*)?(?:join|pop|push|reverse|reduce|concat|map|shift|sp?lice|sort|unshift)(?(1)[^\w%"]|(?:\s*[^@\s\w%,.+\-]))]]></rule>
        <description>Detects JavaScript array properties and methods</description>
        <tags>
            <tag>xss</tag>
            <tag>csrf</tag>
            <tag>id</tag>
            <tag>rfe</tag>
        </tags>
        <impact>4</impact>
    </filter>
    <filter>
        <id>19</id>
        <rule><![CDATA[([^*:\s\w,.\/?+-]\s*)?(?<![a-z]\s)(?<![a-z\/_@\-\|])(\s*return\s*)?(?:set|atob|btoa|charat|charcodeat|charset|concat|crypto|frames|fromcharcode|indexof|lastindexof|match|navigator|toolbar|menubar|replace|regexp|slice|split|substr|substring|escape|\w+codeuri\w*)(?(1)[^\w%"]|(?:\s*[^@\s\w%,.+\-]))]]></rule>
        <description>Detects JavaScript string properties and methods</description>
        <tags>
            <tag>xss</tag>
            <tag>csrf</tag>
            <tag>id</tag>
            <tag>rfe</tag>
        </tags>
        <impact>4</impact>
    </filter>
    <filter>
        <id>20</id>
        <rule><![CDATA[(?:\)\s*\[)|([^*":\s\w,.\/?+-]\s*)?(?<![a-z]\s)(?<![a-z_@\|])(\s*return\s*)?(?:globalstorage|sessionstorage|postmessage|callee|constructor|content|domain|prototype|try|catch|top|call|apply|url|function|object|array|string|math|if|for\s*(?:each)?|elseif|case|switch|regex|boolean|location|(?:ms)?setimmediate|settimeout|setinterval|void|setexpression|namespace|while)(?(1)[^\w%"]|(?:\s*[^@\s\w%".+\-\/]))]]></rule>
        <description>Detects JavaScript language constructs</description>
        <tags>
            <tag>xss</tag>
            <tag>csrf</tag>
            <tag>id</tag>
            <tag>rfe</tag>
        </tags>
        <impact>4</impact>
    </filter>
    <filter>
        <id>21</id>
        <rule><![CDATA[(?:,\s*(?:alert|showmodaldialog|eval)\s*,)|(?::\s*eval\s*[^\s])|([^:\s\w,.\/?+-]\s*)?(?<![a-z\/_@])(\s*return\s*)?(?:(?:document\s*\.)?(?:.+\/)?(?:alert|eval|msgbox|showmod(?:al|eless)dialog|showhelp|prompt|write(?:ln)?|confirm|dialog|open))\s*(?:[^.a-z\s\-]|(?:\s*[^\s\w,.@\/+-]))|(?:java[\s\/]*\.[\s\/]*lang)|(?:\w\s*=\s*new\s+\w+)|(?:&\s*\w+\s*\)[^,])|(?:\+[\W\d]*new\s+\w+[\W\d]*\+)|(?:document\.\w)]]></rule>
        <description>Detects very basic XSS probings</description>
        <tags>
            <tag>xss</tag>
            <tag>csrf</tag>
            <tag>id</tag>
            <tag>rfe</tag>
        </tags>
        <impact>3</impact>
    </filter>
    <filter>
        <id>22</id>
        <rule><![CDATA[(?:=\s*(?:top|this|window|content|self|frames|_content))|(?:\/\s*[gimx]*\s*[)}])|(?:[^\s]\s*=\s*script)|(?:\.\s*constructor)|(?:default\s+xml\s+namespace\s*=)|(?:\/\s*\+[^+]+\s*\+\s*\/)]]></rule>
        <description>Detects advanced XSS probings via Script(), RexExp, constructors and XML namespaces</description>
        <tags>
            <tag>xss</tag>
            <tag>csrf</tag>
            <tag>id</tag>
            <tag>rfe</tag>
        </tags>
        <impact>5</impact>
    </filter>
    <filter>
        <id>23</id>
        <rule><![CDATA[(?:\.\s*\w+\W*=)|(?:\W\s*(?:location|document)\s*\W[^({[;]+[({[;])|(?:\(\w+\?[:\w]+\))|(?:\w{2,}\s*=\s*\d+[^&\w]\w+)|(?:\]\s*\(\s*\w+)]]></rule>
        <description>Detects JavaScript location/document property access and window access obfuscation</description>
        <tags>
            <tag>xss</tag>
            <tag>csrf</tag>
        </tags>
        <impact>5</impact>
    </filter>
    <filter>
        <id>24</id>
        <rule><![CDATA[(?:[".]script\s*\()|(?:\$\$?\s*\(\s*[\w"])|(?:\/[\w\s]+\/\.)|(?:=\s*\/\w+\/\s*\.)|(?:(?:this|window|top|parent|frames|self|content)\[\s*[(,"]*\s*[\w\$])|(?:,\s*new\s+\w+\s*[,;)])]]></rule>
        <description>Detects basic obfuscated JavaScript script injections</description>
        <tags>
            <tag>xss</tag>
            <tag>csrf</tag>
        </tags>
        <impact>5</impact>
    </filter>
    <filter>
        <id>25</id>
        <rule><![CDATA[(?:=\s*[$\w]\s*[\(\[])|(?:\(\s*(?:this|top|window|self|parent|_?content)\s*\))|(?:src\s*=s*(?:\w+:|\/\/))|(?:\w+\[("\w+"|\w+\|\|))|(?:[\d\W]\|\|[\d\W]|\W=\w+,)|(?:\/\s*\+\s*[a-z"])|(?:=\s*\$[^([]*\()|(?:=\s*\(\s*")]]></rule>
        <description>Detects obfuscated JavaScript script injections</description>
        <tags>
            <tag>xss</tag>
            <tag>csrf</tag>
        </tags>
        <impact>5</impact>
    </filter>
    <filter>
        <id>26</id>
        <rule><![CDATA[(?:[^:\s\w]+\s*[^\w\/](href|protocol|host|hostname|pathname|hash|port|cookie)[^\w])]]></rule>
        <description>Detects JavaScript cookie stealing and redirection attempts</description>
        <tags>
            <tag>xss</tag>
            <tag>csrf</tag>
        </tags>
        <impact>4</impact>
    </filter>
    <filter>
        <id>27</id>
        <rule><![CDATA[(?:(?:vbs|vbscript|data):.*[,+])|(?:\w+\s*=\W*(?!https?)\w+:)|(jar:\w+:)|(=\s*"?\s*vbs(?:ript)?:)|(language\s*=\s?"?\s*vbs(?:ript)?)|on\w+\s*=\*\w+\-"?]]></rule>
        <description>Detects data: URL injections, VBS injections and common URI schemes</description>
        <tags>
            <tag>xss</tag>
            <tag>rfe</tag>
        </tags>
        <impact>5</impact>
    </filter>
    <filter>
        <id>28</id>
        <rule><![CDATA[(?:firefoxurl:\w+\|)|(?:(?:file|res|telnet|nntp|news|mailto|chrome)\s*:\s*[%&#xu\/]+)|(wyciwyg|firefoxurl\s*:\s*\/\s*\/)]]></rule>
        <description>Detects IE firefoxurl injections, cache poisoning attempts and local file inclusion/execution</description>
        <tags>
            <tag>xss</tag>
            <tag>rfe</tag>
            <tag>lfi</tag>
            <tag>csrf</tag>
        </tags>
        <impact>5</impact>
    </filter>
    <filter>
        <id>29</id>
        <rule><![CDATA[(?:binding\s?=|moz-binding|behavior\s?=)|(?:[\s\/]style\s*=\s*[-\\])]]></rule>
        <description>Detects bindings and behavior injections</description>
        <tags>
            <tag>xss</tag>
            <tag>csrf</tag>
            <tag>rfe</tag>
        </tags>
        <impact>4</impact>
    </filter>
    <filter>
        <id>30</id>
        <rule><![CDATA[(?:=\s*\w+\s*\+\s*")|(?:\+=\s*\(\s")|(?:!+\s*[\d.,]+\w?\d*\s*\?)|(?:=\s*\[s*\])|(?:"\s*\+\s*")|(?:[^\s]\[\s*\d+\s*\]\s*[;+])|(?:"\s*[&|]+\s*")|(?:\/\s*\?\s*")|(?:\/\s*\)\s*\[)|(?:\d\?.+:\d)|(?:]\s*\[\W*\w)|(?:[^\s]\s*=\s*\/)]]></rule>
        <description>Detects common XSS concatenation patterns 1/2</description>
        <tags>
            <tag>xss</tag>
            <tag>csrf</tag>
            <tag>id</tag>
            <tag>rfe</tag>
        </tags>
        <impact>4</impact>
    </filter>
    <filter>
        <id>31</id>
        <rule><![CDATA[(?:=\s*\d*\.\d*\?\d*\.\d*)|(?:[|&]{2,}\s*")|(?:!\d+\.\d*\?")|(?:\/:[\w.]+,)|(?:=[\d\W\s]*\[[^]]+\])|(?:\?\w+:\w+)]]></rule>
        <description>Detects common XSS concatenation patterns 2/2</description>
        <tags>
            <tag>xss</tag>
            <tag>csrf</tag>
            <tag>id</tag>
            <tag>rfe</tag>
        </tags>
        <impact>4</impact>
    </filter>
    <filter>
        <id>32</id>
        <rule><![CDATA[(?:[^\w\s=]on(?!g\&gt;)\w+[^=_+-]*=[^$]+(?:\W|\&gt;)?)]]></rule>
        <description>Detects possible event handlers</description>
        <tags>
            <tag>xss</tag>
            <tag>csrf</tag>
        </tags>
        <impact>4</impact>
    </filter>
    <filter>
        <id>33</id>
        <rule><![CDATA[(?:\<\w*:?\s(?:[^\>]*)t(?!rong))|(?:\<scri)|(<\w+:\w+)]]></rule>
        <description>Detects obfuscated script tags and XML wrapped HTML</description>
        <tags>
            <tag>xss</tag>
        </tags>
        <impact>4</impact>
    </filter>
    <filter>
        <id>34</id>
        <rule><![CDATA[(?:\<\/\w+\s\w+)|(?:@(?:cc_on|set)[\s@,"=])]]></rule>
        <description>Detects attributes in closing tags and conditional compilation tokens</description>
        <tags>
            <tag>xss</tag>
            <tag>csrf</tag>
        </tags>
        <impact>4</impact>
    </filter>
    <filter>
        <id>35</id>
        <rule><![CDATA[(?:--[^\n]*$)|(?:\<!-|-->)|(?:[^*]\/\*|\*\/[^*])|(?:(?:[\W\d]#|--|{)$)|(?:\/{3,}.*$)|(?:<!\[\W)|(?:\]!>)]]></rule>
        <description>Detects common comment types</description>
        <tags>
            <tag>xss</tag>
            <tag>csrf</tag>
            <tag>id</tag>
        </tags>
        <impact>3</impact>
    </filter>
    <filter>
        <id>37</id>
        <rule><![CDATA[(?:\<base\s+)|(?:<!(?:element|entity|\[CDATA))]]></rule>
        <description>Detects base href injections and XML entity injections</description>
        <tags>
            <tag>xss</tag>
            <tag>csrf</tag>
            <tag>id</tag>
        </tags>
        <impact>5</impact>
    </filter>
    <filter>
        <id>38</id>
        <rule><![CDATA[(?:\<[\/]?(?:[i]?frame|applet|isindex|marquee|keygen|script|audio|video|input|button|textarea|style|base|body|meta|link|object|embed|param|plaintext|xm\w+|image|im(?:g|port)))]]></rule>
        <description>Detects possibly malicious html elements including some attributes</description>
        <tags>
            <tag>xss</tag>
            <tag>csrf</tag>
            <tag>id</tag>
            <tag>rfe</tag>
            <tag>lfi</tag>
        </tags>
        <impact>4</impact>
    </filter>
    <filter>
        <id>39</id>
        <rule><![CDATA[(?:\\x[01fe][\db-ce-f])|(?:%[01fe][\db-ce-f])|(?:&#[01fe][\db-ce-f])|(?:\\[01fe][\db-ce-f])|(?:&#x[01fe][\db-ce-f])]]></rule>
        <description>Detects nullbytes and other dangerous characters</description>
        <tags>
            <tag>id</tag>
            <tag>rfe</tag>
            <tag>xss</tag>
        </tags>
        <impact>5</impact>
    </filter>
    <filter>
        <id>40</id>
        <rule><![CDATA[(?:\)\s*when\s*\d+\s*then)|(?:"\s*(?:#|--|{))|(?:\/\*!\s?\d+)|(?:ch(?:a)?r\s*\(\s*\d)|(?:(?:(n?and|x?or|not)\s+|\|\||\&\&)\s*\w+\()]]></rule>
        <description>Detects MySQL comments, conditions and ch(a)r injections</description>
        <tags>
            <tag>sqli</tag>
            <tag>id</tag>
            <tag>lfi</tag>
        </tags>
        <impact>6</impact>
    </filter>
    <filter>
        <id>41</id>
        <rule><![CDATA[(?:[\s()]case\s*\()|(?:\)\s*like\s*\()|(?:having\s*[^\s]+\s*[^\w\s])|(?:if\s?\([\d\w]\s*[=<>~])]]></rule>
        <description>Detects conditional SQL injection attempts</description>
        <tags>
            <tag>sqli</tag>
            <tag>id</tag>
            <tag>lfi</tag>
        </tags>
        <impact>6</impact>
    </filter>
    <filter>
        <id>42</id>
        <rule><![CDATA[(?:"\s*or\s*"?\d)|(?:\\x(?:23|27|3d))|(?:^.?"$)|(?:(?:^["\\]*(?:[\d"]+|[^"]+"))+\s*(?:n?and|x?or|not|\|\||\&\&)\s*[\w"[+&!@(),.-])|(?:[^\w\s]\w+\s*[|-]\s*"\s*\w)|(?:@\w+\s+(and|or)\s*["\d]+)|(?:@[\w-]+\s(and|or)\s*[^\w\s])|(?:[^\w\s:]\s*\d\W+[^\w\s]\s*".)|(?:\Winformation_schema|table_name\W)]]></rule>
        <description>Detects classic SQL injection probings 1/2</description>
        <tags>
            <tag>sqli</tag>
            <tag>id</tag>
            <tag>lfi</tag>
        </tags>
        <impact>6</impact>
    </filter>
    <filter>
        <id>43</id>
        <rule><![CDATA[(?:"\s*\*.+(?:or|id)\W*"\d)|(?:\^")|(?:^[\w\s"-]+(?<=and\s)(?<=or\s)(?<=xor\s)(?<=nand\s)(?<=not\s)(?<=\|\|)(?<=\&\&)\w+\()|(?:"[\s\d]*[^\w\s]+\W*\d\W*.*["\d])|(?:"\s*[^\w\s?]+\s*[^\w\s]+\s*")|(?:"\s*[^\w\s]+\s*[\W\d].*(?:#|--))|(?:".*\*\s*\d)|(?:"\s*or\s[^\d]+[\w-]+.*\d)|(?:[()*<>%+-][\w-]+[^\w\s]+"[^,])]]></rule>
        <description>Detects classic SQL injection probings 2/2</description>
        <tags>
            <tag>sqli</tag>
            <tag>id</tag>
            <tag>lfi</tag>
        </tags>
        <impact>6</impact>
    </filter>
    <filter>
        <id>44</id>
        <rule><![CDATA[(?:\d"\s+"\s+\d)|(?:^admin\s*"|(\/\*)+"+\s?(?:--|#|\/\*|{)?)|(?:"\s*or[\w\s-]+\s*[+<>=(),-]\s*[\d"])|(?:"\s*[^\w\s]?=\s*")|(?:"\W*[+=]+\W*")|(?:"\s*[!=|][\d\s!=+-]+.*["(].*$)|(?:"\s*[!=|][\d\s!=]+.*\d+$)|(?:"\s*like\W+[\w"(])|(?:\sis\s*0\W)|(?:where\s[\s\w\.,-]+\s=)|(?:"[<>~]+")]]></rule>
        <description>Detects basic SQL authentication bypass attempts 1/3</description>
        <tags>
            <tag>sqli</tag>
            <tag>id</tag>
            <tag>lfi</tag>
        </tags>
        <impact>7</impact>
    </filter>
    <filter>
        <id>45</id>
        <rule><![CDATA[(?:union\s*(?:all|distinct|[(!@]*)\s*[([]*\s*select)|(?:\w+\s+like\s+\")|(?:like\s*"\%)|(?:"\s*like\W*["\d])|(?:"\s*(?:n?and|x?or|not |\|\||\&\&)\s+[\s\w]+=\s*\w+\s*having)|(?:"\s*\*\s*\w+\W+")|(?:"\s*[^?\w\s=.,;)(]+\s*[(@"]*\s*\w+\W+\w)|(?:select\s*[\[\]()\s\w\.,"-]+from)|(?:find_in_set\s*\()]]></rule>
        <description>Detects basic SQL authentication bypass attempts 2/3</description>
        <tags>
            <tag>sqli</tag>
            <tag>id</tag>
            <tag>lfi</tag>
        </tags>
        <impact>7</impact>
    </filter>
     <filter>
        <id>46</id>
        <rule><![CDATA[(?:in\s*\(+\s*select)|(?:(?:n?and|x?or|not |\|\||\&\&)\s+[\s\w+]+(?:regexp\s*\(|sounds\s+like\s*"|[=\d]+x))|("\s*\d\s*(?:--|#))|(?:"[%&<>^=]+\d\s*(=|or))|(?:"\W+[\w+-]+\s*=\s*\d\W+")|(?:"\s*is\s*\d.+"?\w)|(?:"\|?[\w-]{3,}[^\w\s.,]+")|(?:"\s*is\s*[\d.]+\s*\W.*")]]></rule>
        <description>Detects basic SQL authentication bypass attempts 3/3</description>
        <tags>
            <tag>sqli</tag>
            <tag>id</tag>
            <tag>lfi</tag>
        </tags>
        <impact>7</impact>
    </filter>
    <filter>
        <id>47</id>
        <rule><![CDATA[(?:[\d\W]\s+as\s*["\w]+\s*from)|(?:^[\W\d]+\s*(?:union|select|create|rename|truncate|load|alter|delete|update|insert|desc))|(?:(?:select|create|rename|truncate|load|alter|delete|update|insert|desc)\s+(?:(?:group_)concat|char|load_file)\s?\(?)|(?:end\s*\);)|("\s+regexp\W)|(?:[\s(]load_file\s*\()]]></rule>
        <description>Detects concatenated basic SQL injection and SQLLFI attempts</description>
        <tags>
            <tag>sqli</tag>
            <tag>id</tag>
            <tag>lfi</tag>
        </tags>
        <impact>5</impact>
    </filter>
    <filter>
        <id>48</id>
        <rule><![CDATA[(?:@.+=\s*\(\s*select)|(?:\d+\s*or\s*\d+\s*[\-+])|(?:\/\w+;?\s+(?:having|and|or|select)\W)|(?:\d\s+group\s+by.+\()|(?:(?:;|#|--)\s*(?:drop|alter))|(?:(?:;|#|--)\s*(?:update|insert)\s*\w{2,})|(?:[^\w]SET\s*@\w+)|(?:(?:n?and|x?or|not |\|\||\&\&)[\s(]+\w+[\s)]*[!=+]+[\s\d]*["=()])]]></rule>
        <description>Detects chained SQL injection attempts 1/2</description>
        <tags>
            <tag>sqli</tag>
            <tag>id</tag>
        </tags>
        <impact>6</impact>
    </filter>
    <filter>
        <id>49</id>
        <rule><![CDATA[(?:"\s+and\s*=\W)|(?:\(\s*select\s*\w+\s*\()|(?:\*\/from)|(?:\+\s*\d+\s*\+\s*@)|(?:\w"\s*(?:[-+=|@]+\s*)+[\d(])|(?:coalesce\s*\(|@@\w+\s*[^\w\s])|(?:\W!+"\w)|(?:";\s*(?:if|while|begin))|(?:"[\s\d]+=\s*\d)|(?:order\s+by\s+if\w*\s*\()|(?:[\s(]+case\d*\W.+[tw]hen[\s(])]]></rule>
        <description>Detects chained SQL injection attempts 2/2</description>
        <tags>
            <tag>sqli</tag>
            <tag>id</tag>
        </tags>
        <impact>6</impact>
    </filter>
    <filter>
        <id>50</id>
        <rule><![CDATA[(?:(select|;)\s+(?:benchmark|if|sleep)\s*?\(\s*\(?\s*\w+)]]></rule>
        <description>Detects SQL benchmark and sleep injection attempts including conditional queries</description>
        <tags>
            <tag>sqli</tag>
            <tag>id</tag>
        </tags>
        <impact>4</impact>
    </filter>
    <filter>
        <id>51</id>
        <rule><![CDATA[(?:create\s+function\s+\w+\s+returns)|(?:;\s*(?:select|create|rename|truncate|load|alter|delete|update|insert|desc)\s*[\[(]?\w{2,})]]></rule>
        <description>Detects MySQL UDF injection and other data/structure manipulation attempts</description>
        <tags>
            <tag>sqli</tag>
            <tag>id</tag>
        </tags>
        <impact>6</impact>
    </filter>
    <filter>
        <id>52</id>
        <rule><![CDATA[(?:alter\s*\w+.*character\s+set\s+\w+)|(";\s*waitfor\s+time\s+")|(?:";.*:\s*goto)]]></rule>
        <description>Detects MySQL charset switch and MSSQL DoS attempts</description>
        <tags>
            <tag>sqli</tag>
            <tag>id</tag>
        </tags>
        <impact>6</impact>
    </filter>
    <filter>
        <id>53</id>
        <rule><![CDATA[(?:procedure\s+analyse\s*\()|(?:;\s*(declare|open)\s+[\w-]+)|(?:create\s+(procedure|function)\s*\w+\s*\(\s*\)\s*-)|(?:declare[^\w]+[@#]\s*\w+)|(exec\s*\(\s*@)]]></rule>
        <description>Detects MySQL and PostgreSQL stored procedure/function injections</description>
        <tags>
            <tag>sqli</tag>
            <tag>id</tag>
        </tags>
        <impact>7</impact>
    </filter>
    <filter>
        <id>54</id>
        <rule><![CDATA[(?:select\s*pg_sleep)|(?:waitfor\s*delay\s?"+\s?\d)|(?:;\s*shutdown\s*(?:;|--|#|\/\*|{))]]></rule>
        <description>Detects Postgres pg_sleep injection, waitfor delay attacks and database shutdown attempts</description>
        <tags>
            <tag>sqli</tag>
            <tag>id</tag>
        </tags>
        <impact>5</impact>
    </filter>
    <filter>
        <id>55</id>
        <rule><![CDATA[(?:\sexec\s+xp_cmdshell)|(?:"\s*!\s*["\w])|(?:from\W+information_schema\W)|(?:(?:(?:current_)?user|database|schema|connection_id)\s*\([^\)]*)|(?:";?\s*(?:select|union|having)\s*[^\s])|(?:\wiif\s*\()|(?:exec\s+master\.)|(?:union select @)|(?:union[\w(\s]*select)|(?:select.*\w?user\()|(?:into[\s+]+(?:dump|out)file\s*")]]></rule>
        <description>Detects MSSQL code execution and information gathering attempts</description>
        <tags>
            <tag>sqli</tag>
            <tag>id</tag>
        </tags>
        <impact>5</impact>
    </filter>
    <filter>
        <id>56</id>
        <rule><![CDATA[(?:merge.*using\s*\()|(execute\s*immediate\s*")|(?:\W+\d*\s*having\s*[^\s\-])|(?:match\s*[\w(),+-]+\s*against\s*\()]]></rule>
        <description>Detects MATCH AGAINST, MERGE, EXECUTE IMMEDIATE and HAVING injections</description>
        <tags>
            <tag>sqli</tag>
            <tag>id</tag>
        </tags>
        <impact>5</impact>
    </filter>
    <filter>
        <id>57</id>
        <rule><![CDATA[(?:,.*[)\da-f"]"(?:".*"|\Z|[^"]+))|(?:\Wselect.+\W*from)|((?:select|create|rename|truncate|load|alter|delete|update|insert|desc)\s*\(\s*space\s*\()]]></rule>
        <description>Detects MySQL comment-/space-obfuscated injections and backtick termination</description>
        <tags>
            <tag>sqli</tag>
            <tag>id</tag>
        </tags>
        <impact>5</impact>
    </filter>
    <filter>
        <id>58</id>
        <rule><![CDATA[(?:@[\w-]+\s*\()|(?:]\s*\(\s*["!]\s*\w)|(?:<[?%](?:php)?.*(?:[?%]>)?)|(?:;[\s\w|]*\$\w+\s*=)|(?:\$\w+\s*=(?:(?:\s*\$?\w+\s*[(;])|\s*".*"))|(?:;\s*\{\W*\w+\s*\()]]></rule>
        <description>Detects code injection attempts 1/3</description>
        <tags>
            <tag>id</tag>
            <tag>rfe</tag>
            <tag>lfi</tag>
        </tags>
        <impact>7</impact>
    </filter>
    <filter>
        <id>59</id>
        <rule><![CDATA[(?:(?:[;]+|(<[?%](?:php)?)).*(?:define|eval|file_get_contents|include|require|require_once|set|shell_exec|phpinfo|system|passthru|preg_\w+|execute)\s*["(@])]]></rule>
        <description>Detects code injection attempts 2/3</description>
        <tags>
            <tag>id</tag>
            <tag>rfe</tag>
            <tag>lfi</tag>
        </tags>
        <impact>7</impact>
    </filter>
    <filter>
        <id>60</id>
        <rule><![CDATA[(?:(?:[;]+|(<[?%](?:php)?)).*[^\w](?:echo|print|print_r|var_dump|[fp]open))|(?:;\s*rm\s+-\w+\s+)|(?:;.*{.*\$\w+\s*=)|(?:\$\w+\s*\[\]\s*=\s*)]]></rule>
        <description>Detects code injection attempts 3/3</description>
        <tags>
            <tag>id</tag>
            <tag>rfe</tag>
            <tag>lfi</tag>
        </tags>
        <impact>7</impact>
    </filter>
    <filter>
        <id>62</id>
        <rule><![CDATA[(?:function[^(]*\([^)]*\))|(?:(?:delete|void|throw|instanceof|new|typeof)[^\w.]+\w+\s*[([])|([)\]]\s*\.\s*\w+\s*=)|(?:\(\s*new\s+\w+\s*\)\.)]]></rule>
        <description>Detects common function declarations and special JS operators</description>
        <tags>
            <tag>id</tag>
            <tag>rfe</tag>
            <tag>lfi</tag>
        </tags>
        <impact>5</impact>
    </filter>
    <filter>
        <id>63</id>
        <rule><![CDATA[(?:[\w.-]+@[\w.-]+%(?:[01][\db-ce-f])+\w+:)]]></rule>
        <description>Detects common mail header injections</description>
        <tags>
            <tag>id</tag>
            <tag>spam</tag>
        </tags>
        <impact>5</impact>
    </filter>
    <filter>
        <id>64</id>
        <rule><![CDATA[(?:\.pl\?\w+=\w?\|\w+;)|(?:\|\(\w+=\*)|(?:\*\s*\)+\s*;)]]></rule>
        <description>Detects perl echo shellcode injection and LDAP vectors</description>
        <tags>
            <tag>lfi</tag>
            <tag>rfe</tag>
        </tags>
        <impact>5</impact>
    </filter>
    <filter>
        <id>65</id>
        <rule><![CDATA[(?:(^|\W)const\s+[\w\-]+\s*=)|(?:(?:do|for|while)\s*\([^;]+;+\))|(?:(?:^|\W)on\w+\s*=[\w\W]*(?:on\w+|alert|eval|print|confirm|prompt))|(?:groups=\d+\(\w+\))|(?:(.)\1{128,})]]></rule>
        <description>Detects basic XSS DoS attempts</description>
        <tags>
            <tag>rfe</tag>
            <tag>dos</tag>
        </tags>
        <impact>5</impact>
    </filter>
    <filter>
        <id>67</id>
        <rule><![CDATA[(?:\({2,}\+{2,}:{2,})|(?:\({2,}\+{2,}:+)|(?:\({3,}\++:{2,})|(?:\$\[!!!\])]]></rule>
        <description>Detects unknown attack vectors based on PHPIDS Centrifuge detection</description>
        <tags>
            <tag>xss</tag>
            <tag>csrf</tag>
            <tag>id</tag>
            <tag>rfe</tag>
            <tag>lfi</tag>
        </tags>
        <impact>7</impact>
    </filter>
    <filter>
        <id>68</id>
        <rule><![CDATA[(?:[\s\/"]+[-\w\/\\\*]+\s*=.+(?:\/\s*>))]]></rule>
        <description>Finds attribute breaking injections including obfuscated attributes</description>
        <tags>
            <tag>xss</tag>
            <tag>csrf</tag>
        </tags>
        <impact>4</impact>
    </filter>
    <filter>
        <id>69</id>
        <rule><![CDATA[(?:(?:msgbox|eval)\s*\+|(?:language\s*=\*vbscript))]]></rule>
        <description>Finds basic VBScript injection attempts</description>
        <tags>
            <tag>xss</tag>
            <tag>csrf</tag>
        </tags>
        <impact>4</impact>
    </filter>
    <filter>
        <id>70</id>
        <rule><![CDATA[(?:\[\$(?:ne|eq|lte?|gte?|n?in|mod|all|size|exists|type|slice|or)\])]]></rule>
        <description>Finds basic MongoDB SQL injection attempts</description>
        <tags>
            <tag>sqli</tag>
        </tags>
        <impact>4</impact>
    </filter>
    <filter>
        <id>71</id>
        <rule><![CDATA[(?:[\s\d\/"]+(?:on\w+|style|poster|background)=[$"\w])|(?:-type\s*:\s*multipart)]]></rule>
        <description>Finds malicious attribute injection attempts and MHTML attacks</description>
        <tags>
            <tag>xss</tag>
            <tag>csrf</tag>
        </tags>
        <impact>6</impact>
    </filter>
  <filter>
        <id>72</id>
        <rule><![CDATA[(?:(sleep\((\s*)(\d*)(\s*)\)|benchmark\((.*)\,(.*)\)))]]></rule>
        <description>Detects blind sqli tests using sleep() or benchmark().</description>
        <tags>
            <tag>sqli</tag>
            <tag>id</tag>
        </tags>
        <impact>4</impact>
    </filter>
    <filter>
        <id>73</id>
        <rule><![CDATA[(?:(\%SYSTEMROOT\%))]]></rule>
        <description>An attacker is trying to locate a file to read or write.</description>
        <tags>
            <tag>files</tag>
            <tag>id</tag>
        </tags>
        <impact>4</impact>
    </filter>
    <filter>
        <id>75</id>
        <rule><![CDATA[(?:(((.*)\%[c|d|i|e|f|g|o|s|u|x|p|n]){8}))]]></rule>
        <description>Looking for a format string attack</description>
        <tags>
            <tag>format string</tag>
        </tags>
        <impact>4</impact>
    </filter>
    <filter>
        <id>76</id>
        <rule><![CDATA[(?:(union(.*)select(.*)from))]]></rule>
        <description>Looking for basic sql injection. Common attack string for mysql, oracle and others.</description>
        <tags>
            <tag>sqli</tag>
            <tag>id</tag>
        </tags>
        <impact>3</impact>
    </filter>
    <filter>
        <id>77</id>
        <rule><![CDATA[(?:^(-0000023456|4294967295|4294967296|2147483648|2147483647|0000012345|-2147483648|-2147483649|0000023456|2.2250738585072007e-308|1e309)$)]]></rule>
        <description>Looking for integer overflow attacks, these are taken from skipfish, except 2.2250738585072007e-308 is the "magic number" crash</description>
        <tags>
            <tag>sqli</tag>
            <tag>id</tag>
        </tags>
        <impact>3</impact>
    </filter>
    <filter>
        <id>78</id>
        <rule><![CDATA[(?:%23.*?%0a)]]></rule>
        <description>Detects SQL comment filter evasion</description>
        <tags>
            <tag>format string</tag>
        </tags>
        <impact>4</impact>
    </filter>
</filters>
interface/lib/classes/IDS/license.txt
New file
@@ -0,0 +1,18 @@
 *
 * The files in the folder IDS and its subfolders belong to the
 * PHP Intrusion Detection System software and are licensed under LGPL.
 *
 * Copyright (c) 2008 PHPIDS group (https://phpids.org)
 *
 * PHPIDS is free software; you can redistribute it and/or modify
 * it under the terms of the GNU Lesser General Public License as published by
 * the Free Software Foundation, version 3 of the License, or
 * (at your option) any later version.
 *
 * PHPIDS 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 Lesser General Public License for more details.
 *
 * You should have received a copy of the GNU Lesser General Public License
 * along with PHPIDS. If not, see <http://www.gnu.org/licenses/>.
interface/lib/classes/auth.inc.php
@@ -44,6 +44,14 @@
            return false;
        }
    }
    public function is_superadmin() {
        if($_SESSION['s']['user']['typ'] == 'admin' && $_SESSION['s']['user']['userid'] == 1) {
            return true;
        } else {
            return false;
        }
    }
    public function has_clients($userid) {
        global $app, $conf;
@@ -83,6 +91,7 @@
        global $app;
        
        $userid = $app->functions->intval($userid);
        if(!preg_match('/^[a-zA-Z0-9\-\_]{1,64}$/',$limitname)) $app->error('Invalid limit name '.$limitname);
        
        // simple query cache
        if($this->client_limits===null)
@@ -120,12 +129,29 @@
    public function check_module_permissions($module) {
        // Check if the current user has the permissions to access this module
        if(!stristr($_SESSION["s"]["user"]["modules"], $module)) {
        $user_modules = explode(',',$_SESSION["s"]["user"]["modules"]);
        if(!in_array($module,$user_modules)) {
            // echo "LOGIN_REDIRECT:/index.php";
            header("Location: /index.php");
            exit;
        }
    }
    public function check_security_permissions($permission) {
        global $app;
        $app->uses('getconf');
        $security_config = $app->getconf->get_security_config('permissions');
        $security_check = false;
        if($security_config[$permission] == 'yes') $security_check = true;
        if($security_config[$permission] == 'superadmin' && $app->auth->is_superadmin()) $security_check = true;
        if($security_check !== true) {
            $app->error($app->lng('security_check1_txt').' '.$permission.' '.$app->lng('security_check2_txt'));
        }
    }
    public function get_random_password($length = 8) {
        $base64_alphabet='ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/';
interface/lib/classes/db_firebird.inc.php
File was deleted
interface/lib/classes/db_mysql.inc.php
@@ -121,6 +121,52 @@
        parent::query( 'SET NAMES '.$this->dbCharset);
        parent::query( "SET character_set_results = '".$this->dbCharset."', character_set_client = '".$this->dbCharset."', character_set_connection = '".$this->dbCharset."', character_set_database = '".$this->dbCharset."', character_set_server = '".$this->dbCharset."'");
    }
    private function securityScan($string) {
        global $app, $conf;
        // get security config
        if(isset($app)) {
            $app->uses('getconf');
            $ids_config = $app->getconf->get_security_config('ids');
            if($ids_config['sql_scan_enabled'] == 'yes') {
                $string_orig = $string;
                //echo $string;
                $chars = array(';', '#', '/*', '*/', '--', ' UNION ', '\\\'', '\\"');
                $string = str_replace('\\\\', '', $string);
                $string = preg_replace('/(^|[^\\\])([\'"])(.*?[^\\\])\\2/is', '$1', $string);
                $ok = true;
                if(substr_count($string, "`") % 2 != 0 || substr_count($string, "'") % 2 != 0 || substr_count($string, '"') % 2 != 0) {
                    $app->log("SQL injection warning (" . $string_orig . ")",2);
                    $ok = false;
                } else {
                    foreach($chars as $char) {
                        if(strpos($string, $char) !== false) {
                            $ok = false;
                            $app->log("SQL injection warning (" . $string_orig . ")",2);
                            break;
                        }
                    }
                }
                if($ok == true) {
                    return true;
                } else {
                    if($ids_config['sql_scan_action'] == 'warn') {
                        // we return false in warning level.
                        return false;
                    } else {
                        // if sql action = 'block' or anything else then stop here.
                        $app->error('Possible SQL injection. All actions have been logged.');
                    }
                }
            }
        }
    }
    public function query($queryString) {
        global $conf;
@@ -143,6 +189,7 @@
                }
            }
        } while($ok == false);
        $this->securityScan($queryString);
        $this->queryId = parent::query($queryString);
        $this->updateError('DB::query('.$queryString.') -> mysqli_query');
        if($this->errorNumber && $conf['demo_mode'] === false) debug_print_backtrace();
@@ -262,12 +309,12 @@
    public function datalogSave($db_table, $action, $primary_field, $primary_id, $record_old, $record_new, $force_update = false) {
        global $app, $conf;
        // Insert backticks only for incomplete table names.
        if(stristr($db_table, '.')) {
            $escape = '';
        } else {
            $escape = '`';
        }
        // Check fields
        if(!preg_match('/^[a-zA-Z0-9\-\_\.]{1,64}$/',$db_table)) $app->error('Invalid table name '.$db_table);
        if(!preg_match('/^[a-zA-Z0-9\-\_]{1,64}$/',$primary_field)) $app->error('Invalid primary field '.$primary_field.' in table '.$db_table);
        $primary_field = $this->quote($primary_field);
        $primary_id = intval($primary_id);
        if($force_update == true) {
            //* We force a update even if no record has changed
@@ -307,7 +354,16 @@
    public function datalogInsert($tablename, $insert_data, $index_field) {
        global $app;
        
        $tablename = $this->quote($tablename);
        // Check fields
        if(!preg_match('/^[a-zA-Z0-9\-\_\.]{1,64}$/',$tablename)) $app->error('Invalid table name '.$tablename);
        if(!preg_match('/^[a-zA-Z0-9\-\_]{1,64}$/',$index_field)) $app->error('Invalid index field '.$index_field.' in table '.$tablename);
        if(strpos($tablename, '.') !== false) {
            $tablename_escaped = preg_replace('/^(.+)\.(.+)$/', '`$1`.`$2`', $tablename);
        } else {
            $tablename_escaped = '`' . $tablename . '`';
        }
        $index_field = $this->quote($index_field);
        if(is_array($insert_data)) {
@@ -325,9 +381,9 @@
        }
        $old_rec = array();
        $this->query("INSERT INTO $tablename $insert_data_str");
        $this->query("INSERT INTO $tablename_escaped $insert_data_str");
        $index_value = $this->insertID();
        $new_rec = $this->queryOneRecord("SELECT * FROM $tablename WHERE $index_field = '$index_value'");
        $new_rec = $this->queryOneRecord("SELECT * FROM $tablename_escaped WHERE $index_field = '$index_value'");
        $this->datalogSave($tablename, 'INSERT', $index_field, $index_value, $old_rec, $new_rec);
        return $index_value;
@@ -337,11 +393,20 @@
    public function datalogUpdate($tablename, $update_data, $index_field, $index_value, $force_update = false) {
        global $app;
        
        $tablename = $this->quote($tablename);
        // Check fields
        if(!preg_match('/^[a-zA-Z0-9\-\_\.]{1,64}$/',$tablename)) $app->error('Invalid table name '.$tablename);
        if(!preg_match('/^[a-zA-Z0-9\-\_]{1,64}$/',$index_field)) $app->error('Invalid index field '.$index_field.' in table '.$tablename);
        if(strpos($tablename, '.') !== false) {
            $tablename_escaped = preg_replace('/^(.+)\.(.+)$/', '`$1`.`$2`', $tablename);
        } else {
            $tablename_escaped = '`' . $tablename . '`';
        }
        $index_field = $this->quote($index_field);
        $index_value = $this->quote($index_value);
        $old_rec = $this->queryOneRecord("SELECT * FROM $tablename WHERE $index_field = '$index_value'");
        $old_rec = $this->queryOneRecord("SELECT * FROM $tablename_escaped WHERE $index_field = '$index_value'");
        if(is_array($update_data)) {
            $update_data_str = '';
@@ -353,8 +418,8 @@
            $update_data_str = $update_data;
        }
        $this->query("UPDATE $tablename SET $update_data_str WHERE $index_field = '$index_value'");
        $new_rec = $this->queryOneRecord("SELECT * FROM $tablename WHERE $index_field = '$index_value'");
        $this->query("UPDATE $tablename_escaped SET $update_data_str WHERE $index_field = '$index_value'");
        $new_rec = $this->queryOneRecord("SELECT * FROM $tablename_escaped WHERE $index_field = '$index_value'");
        $this->datalogSave($tablename, 'UPDATE', $index_field, $index_value, $old_rec, $new_rec, $force_update);
        return true;
@@ -364,12 +429,21 @@
    public function datalogDelete($tablename, $index_field, $index_value) {
        global $app;
        
        $tablename = $this->quote($tablename);
        // Check fields
        if(!preg_match('/^[a-zA-Z0-9\-\_\.]{1,64}$/',$tablename)) $app->error('Invalid table name '.$tablename);
        if(!preg_match('/^[a-zA-Z0-9\-\_]{1,64}$/',$index_field)) $app->error('Invalid index field '.$index_field.' in table '.$tablename);
        if(strpos($tablename, '.') !== false) {
            $tablename_escaped = preg_replace('/^(.+)\.(.+)$/', '`$1`.`$2`', $tablename);
        } else {
            $tablename_escaped = '`' . $tablename . '`';
        }
        $index_field = $this->quote($index_field);
        $index_value = $this->quote($index_value);
        $old_rec = $this->queryOneRecord("SELECT * FROM $tablename WHERE $index_field = '$index_value'");
        $this->query("DELETE FROM $tablename WHERE $index_field = '$index_value'");
        $old_rec = $this->queryOneRecord("SELECT * FROM $tablename_escaped WHERE $index_field = '$index_value'");
        $this->query("DELETE FROM $tablename_escaped WHERE $index_field = '$index_value'");
        $new_rec = array();
        $this->datalogSave($tablename, 'DELETE', $index_field, $index_value, $old_rec, $new_rec);
interface/lib/classes/form.inc.php
File was deleted
interface/lib/classes/getconf.inc.php
@@ -31,6 +31,7 @@
class getconf {
    private $config;
    private $security_config;
    public function get_server_config($server_id, $section = '') {
        global $app;
@@ -54,6 +55,22 @@
        }
        return ($section == '') ? $this->config['global'] : $this->config['global'][$section];
    }
    // Function has been moved to $app->get_security_config($section)
    public function get_security_config($section = '') {
        global $app;
        if(is_array($this->security_config)) {
            return ($section == '') ? $this->security_config : $this->security_config[$section];
        } else {
            $this->uses('ini_parser');
            $security_config_path = '/usr/local/ispconfig/security/security_settings.ini';
            if(!is_file($security_config_path)) $security_config_path = realpath(ISPC_ROOT_PATH.'/../security/security_settings.ini');
            $this->security_config = $this->ini_parser->parse_ini_string(file_get_contents($security_config_path));
            return ($section == '') ? $this->security_config : $this->security_config[$section];
        }
    }
}
interface/lib/classes/ids.inc.php
New file
@@ -0,0 +1,149 @@
<?php
/*
Copyright (c) 2014, Till Brehm, ISPConfig UG
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 ids {
    public function start()
    {
        global $app, $conf;
        $security_config = $app->getconf->get_security_config('ids');
        set_include_path(
            get_include_path()
            . PATH_SEPARATOR
            . ISPC_CLASS_PATH.'/'
        );
        require_once(ISPC_CLASS_PATH.'/IDS/Init.php');
        require_once(ISPC_CLASS_PATH.'/IDS/Monitor.php');
        require_once(ISPC_CLASS_PATH.'/IDS/Filter.php');
        require_once(ISPC_CLASS_PATH.'/IDS/Filter/Storage.php');
        require_once(ISPC_CLASS_PATH.'/IDS/Report.php');
        require_once(ISPC_CLASS_PATH.'/IDS/Event.php');
        require_once(ISPC_CLASS_PATH.'/IDS/Converter.php');
        $ids_request = array(
            'SESSION' => $_SESSION,
            'GET' => $_GET,
            'POST' => $_POST,
            'COOKIE' => $_COOKIE
        );
        $ids_init = IDS\Init::init(ISPC_CLASS_PATH.'/IDS/Config/Config.ini.php');
        $ids_init->config['General']['base_path'] = ISPC_CLASS_PATH.'/IDS/';
        $ids_init->config['General']['tmp_path'] = '../../../temp';
        $ids_init->config['General']['use_base_path'] = true;
        $ids_init->config['Caching']['caching'] = 'none';
        $ids_init->config['Logging']['path'] = '../../../temp/ids.log';
        $current_script_name = trim($_SERVER['SCRIPT_NAME']);
        // Get whitelist
        $whitelist_path = '/usr/local/ispconfig/security/ids.whitelist';
        if(is_file('/usr/local/ispconfig/security/ids.whitelist.custom')) $whitelist_path = '/usr/local/ispconfig/security/ids.whitelist.custom';
        if(!is_file($whitelist_path)) $whitelist_path = realpath(ISPC_ROOT_PATH.'/../security/ids.whitelist');
        $whitelist_lines = file($whitelist_path);
        if(is_array($whitelist_lines)) {
            foreach($whitelist_lines as $line) {
                $line = trim($line);
                if(substr($line,0,1) != '#') {
                    list($user,$path,$varname) = explode(':',$line);
                    if($current_script_name == $path) {
                        if($user = 'any'
                            || ($user == 'user' && ($_SESSION['s']['user']['typ'] == 'user' || $_SESSION['s']['user']['typ'] == 'admin'))
                            || ($user == 'admin' && $_SESSION['s']['user']['typ'] == 'admin')) {
                                $ids_init->config['General']['exceptions'][] = $varname;
                        }
                    }
                }
            }
        }
        // Get HTML fields
        $htmlfield_path = '/usr/local/ispconfig/security/ids.htmlfield';
        if(is_file('/usr/local/ispconfig/security/ids.htmlfield.custom')) $htmlfield_path = '/usr/local/ispconfig/security/ids.htmlfield.custom';
        if(!is_file($htmlfield_path)) $htmlfield_path = realpath(ISPC_ROOT_PATH.'/../security/ids.htmlfield');
        $htmlfield_lines = file($htmlfield_path);
        if(is_array($htmlfield_lines)) {
            foreach($htmlfield_lines as $line) {
                $line = trim($line);
                if(substr($line,0,1) != '#') {
                    list($user,$path,$varname) = explode(':',$line);
                    if($current_script_name == $path) {
                        if($user = 'any'
                            || ($user == 'user' && ($_SESSION['s']['user']['typ'] == 'user' || $_SESSION['s']['user']['typ'] == 'admin'))
                            || ($user == 'admin' && $_SESSION['s']['user']['typ'] == 'admin')) {
                                $ids_init->config['General']['html'][] = $varname;
                        }
                    }
                }
            }
        }
        $ids = new IDS\Monitor($ids_init);
        $ids_result = $ids->run($ids_request);
        if (!$ids_result->isEmpty()) {
            $impact = $ids_result->getImpact();
            if($impact >= $security_config['ids_log_level']) {
                $ids_log = ISPC_ROOT_PATH.'/temp/ids.log';
                if(!is_file($ids_log)) touch($ids_log);
                $user = isset($_SESSION['s']['user']['typ'])?$_SESSION['s']['user']['typ']:'any';
                $log_lines = '';
                foreach ($ids_result->getEvents() as $event) {
                    $log_lines .= $user.':'.$current_script_name.':'.$event->getName()."\n";
                }
                file_put_contents($ids_log,$log_lines,FILE_APPEND);
            }
            if($impact >= $security_config['ids_warn_level']) {
                $app->log("PHP IDS Alert.".$ids_result, 2);
            }
            if($impact >= $security_config['ids_block_level']) {
                $app->error("Possible attack detected. This action has been logged.",'', true, 2);
            }
        }
    }
}
?>
interface/lib/classes/remoting.inc.php
@@ -1415,13 +1415,30 @@
    public function client_add($session_id, $reseller_id, $params)
    {
        global $app;
        if (!$this->checkPerm($session_id, 'client_add'))
        {
            $this->server->fault('permission_denied', 'You do not have the permissions to access this function.');
            return false;
        }
        if(!isset($params['parent_client_id']) || $params['parent_client_id'] == 0) $params['parent_client_id'] = $reseller_id;
        $affected_rows = $this->klientadd('../client/form/' . (isset($params['limit_client']) && $params['limit_client'] > 0 ? 'reseller' : 'client') . '.tform.php', $reseller_id, $params);
        if($params['parent_client_id']) {
            // check if this one is reseller
            $check = $app->db->queryOneRecord('SELECT `limit_client` FROM `client` WHERE `client_id` = ' . intval($client_id));
            if($check['limit_client'] == 0) {
                $this->server->fault('Invalid reseller', 'Selected client is not a reseller.');
                return false;
            }
            if(isset($params['limit_client']) && $params['limit_client'] != 0) {
                $this->server->fault('Invalid reseller', 'Reseller cannot be client of another reseller.');
                return false;
            }
        }
        $affected_rows = $this->klientadd('../client/form/' . (isset($params['limit_client']) && $params['limit_client'] != 0 ? 'reseller' : 'client') . '.tform.php', $reseller_id, $params);
        return $affected_rows;
    }
@@ -1437,8 +1454,24 @@
        }
        $app->uses('remoting_lib');
        $app->remoting_lib->loadFormDef('../client/form/' . (isset($params['limit_client']) && $params['limit_client'] > 0 ? 'reseller' : 'client') . '.tform.php');
        $app->remoting_lib->loadFormDef('../client/form/' . (isset($params['limit_client']) && $params['limit_client'] != 0 ? 'reseller' : 'client') . '.tform.php');
        $old_rec = $app->remoting_lib->getDataRecord($client_id);
        if(!isset($params['parent_client_id']) || $params['parent_client_id'] == 0) $params['parent_client_id'] = $reseller_id;
        if($params['parent_client_id']) {
            // check if this one is reseller
            $check = $app->db->queryOneRecord('SELECT `limit_client` FROM `client` WHERE `client_id` = ' . intval($client_id));
            if($check['limit_client'] == 0) {
                $this->server->fault('Invalid reseller', 'Selected client is not a reseller.');
                return false;
            }
            if(isset($params['limit_client']) && $params['limit_client'] != 0) {
                $this->server->fault('Invalid reseller', 'Reseller cannot be client of another reseller.');
                return false;
            }
        }
        // we need the previuos templates assigned here
        $this->oldTemplatesAssigned = $app->db->queryAllRecords('SELECT * FROM `client_template_assigned` WHERE `client_id` = ' . $client_id);
@@ -1462,8 +1495,7 @@
        }
        if(!isset($params['parent_client_id']) || $params['parent_client_id'] == 0) $params['parent_client_id'] = $reseller_id;
        $affected_rows = $this->updateQuery('../client/form/' . (isset($params['limit_client']) && $params['limit_client'] > 0 ? 'reseller' : 'client') . '.tform.php', $reseller_id, $client_id, $params, 'client:' . ($reseller_id ? 'reseller' : 'client') . ':on_after_update');
        $affected_rows = $this->updateQuery('../client/form/' . (isset($params['limit_client']) && $params['limit_client'] != 0 ? 'reseller' : 'client') . '.tform.php', $reseller_id, $client_id, $params, 'client:' . ($params['parent_client_id'] ? 'reseller' : 'client') . ':on_after_update');
        $app->remoting_lib->ispconfig_sysuser_update($params, $client_id);
@@ -3195,7 +3227,7 @@
        $this->id = $insert_id;
        $this->dataRecord = $params;
        $app->plugin->raiseEvent('client:' . (isset($params['limit_client']) && $params['limit_client'] > 0 ? 'reseller' : 'client') . ':on_after_insert', $this);
        $app->plugin->raiseEvent('client:' . (isset($params['limit_client']) && $params['limit_client'] != 0 ? 'reseller' : 'client') . ':on_after_insert', $this);
        /*
        if($app->db->errorMessage != '') {
interface/lib/classes/validate_ftpuser.inc.php
@@ -36,7 +36,10 @@
    function ftp_dir($field_name, $field_value, $validator) {
        global $app;
        if($app->tform->primary_id == 0) {
        $primary_id = (isset($app->tform->primary_id) && $app->tform->primary_id > 0)?$app->tform->primary_id:$app->remoting_lib->primary_id;
        $primary_id = $app->functions->intval($primary_id);
        if($primary_id == 0 && !isset($app->remoting_lib->dataRecord['parent_domain_id'])) {
            $errmsg = $validator['errmsg'];
            if(isset($app->tform->wordbook[$errmsg])) {
                return $app->tform->wordbook[$errmsg]."<br>\r\n";
@@ -45,18 +48,25 @@
            }
        }
        $ftp_data = $app->db->queryOneRecord("SELECT parent_domain_id FROM ftp_user WHERE ftp_user_id = '".$app->db->quote($app->tform->primary_id)."'");
        if(!is_array($ftp_data) || $ftp_data["parent_domain_id"] < 1) {
            $errmsg = $validator['errmsg'];
            if(isset($app->tform->wordbook[$errmsg])) {
                return $app->tform->wordbook[$errmsg]."<br>\r\n";
        if($primary_id > 0) {
            //* get parent_domain_id from website
            $ftp_data = $app->db->queryOneRecord("SELECT parent_domain_id FROM ftp_user WHERE ftp_user_id = '".$app->db->quote($primary_id)."'");
            if(!is_array($ftp_data) || $ftp_data["parent_domain_id"] < 1) {
                $errmsg = $validator['errmsg'];
                if(isset($app->tform->wordbook[$errmsg])) {
                    return $app->tform->wordbook[$errmsg]."<br>\r\n";
                } else {
                    return $errmsg."<br>\r\n";
                }
            } else {
                return $errmsg."<br>\r\n";
                $parent_domain_id = $ftp_data["parent_domain_id"];
            }
        } else {
            //* get parent_domain_id from dataRecord when we have a insert operation trough remote API
            $parent_domain_id = $app->functions->intval($app->remoting_lib->dataRecord['parent_domain_id']);
        }
        $domain_data = $app->db->queryOneRecord("SELECT domain_id, document_root FROM web_domain WHERE domain_id = '".$app->db->quote($ftp_data["parent_domain_id"])."'");
        $domain_data = $app->db->queryOneRecord("SELECT domain_id, document_root FROM web_domain WHERE domain_id = '".$app->db->quote($parent_domain_id)."'");
        if(!is_array($domain_data) || $domain_data["domain_id"] < 1) {
            $errmsg = $validator['errmsg'];
            if(isset($app->tform->wordbook[$errmsg])) {
interface/lib/classes/validate_systemuser.inc.php
@@ -29,6 +29,16 @@
*/
class validate_systemuser {
    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 user is ok.
@@ -36,11 +46,15 @@
    function check_sysuser($field_name, $field_value, $validator) {
        global $app;
        
        //* Skip Test if we have the placeholder input of the remote APi for the web_domain system_user field here.
        if($field_name == 'system_user' && $field_value == '-') return '';
        //* Check the input
        $errmsg = $validator['errmsg'];
        $check_names = (isset($validator['check_names']) && $validator['check_names'] == true)?true:false;
        if($app->functions->is_allowed_user(trim(strtolower($field_value)),$check_names) == false) {
            return $app->tform->wordbook[$errmsg]."<br>\r\n";
            return $this->get_error($errmsg);
        }
    }
    
@@ -50,15 +64,83 @@
    function check_sysgroup($field_name, $field_value, $validator) {
        global $app;
        
        //* Skip Test if we have the placeholder input of the remote APi for the web_domain system_group field here.
        if($field_name == 'system_group' && $field_value == '-') return '';
        $errmsg = $validator['errmsg'];
        $check_names = (isset($validator['check_names']) && $validator['check_names'] == true)?true:false;
        if($app->functions->is_allowed_group(trim(strtolower($field_value)),$check_names) == false) {
            return $app->tform->wordbook[$errmsg]."<br>\r\n";
            return $this->get_error($errmsg);
        }
    }
    /*
        Validator function to check if a given dir is ok.
    */
    function shelluser_dir($field_name, $field_value, $validator) {
        global $app;
        $primary_id = (isset($app->tform->primary_id) && $app->tform->primary_id > 0)?$app->tform->primary_id:$app->remoting_lib->primary_id;
        $primary_id = $app->functions->intval($primary_id);
        if($primary_id == 0 && !isset($app->remoting_lib->dataRecord['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";
            }
        }
        if($primary_id > 0) {
            //* get parent_domain_id from website
            $shell_data = $app->db->queryOneRecord("SELECT parent_domain_id FROM shell_user WHERE shell_user_id = '".$app->db->quote($primary_id)."'");
            if(!is_array($shell_data) || $shell_data["parent_domain_id"] < 1) {
                $errmsg = $validator['errmsg'];
                if(isset($app->tform->wordbook[$errmsg])) {
                    return $app->tform->wordbook[$errmsg]."<br>\r\n";
                } else {
                    return $errmsg."<br>\r\n";
                }
            } else {
                $parent_domain_id = $shell_data["parent_domain_id"];
            }
        } else {
            //* get parent_domain_id from dataRecord when we have a insert operation trough remote API
            $parent_domain_id = $app->functions->intval($app->remoting_lib->dataRecord['parent_domain_id']);
        }
        $domain_data = $app->db->queryOneRecord("SELECT domain_id, document_root FROM web_domain WHERE domain_id = '".$app->db->quote($parent_domain_id)."'");
        if(!is_array($domain_data) || $domain_data["domain_id"] < 1) {
            $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(stristr($field_value, '..') or stristr($field_value, './') or stristr($field_value, '/.')) $is_ok = false;
        //* Final check if docroot path of website is >= 5 chars
        if(strlen($doc_root) < 5) $is_ok = false;
        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";
            }
        }
    }
}
interface/lib/config.inc.php
@@ -44,7 +44,7 @@
//** Application
define('ISPC_APP_TITLE', 'ISPConfig');
define('ISPC_APP_VERSION', '3.0.5.4p2');
define('ISPC_APP_VERSION', '3.0.5.4p3');
define('DEVSYSTEM', 0);
interface/lib/lang/ar.lng
@@ -147,4 +147,6 @@
$wb['strength_5'] = 'Very Strong';
$wb['weak_password_txt'] = 'The chosen password does not match the security guidelines. It has to be at least {chars} chars in length and have a strength of \\"{strength}\\".';
$wb['weak_password_length_txt'] = 'The chosen password does not match the security guidelines. It has to be at least {chars} chars in length.';
$wb['security_check1_txt'] = 'Check for security permission:';
$wb['security_check2_txt'] = 'failed.';
?>
interface/lib/lang/bg.lng
@@ -147,4 +147,6 @@
$wb['strength_5'] = 'Very Strong';
$wb['weak_password_txt'] = 'The chosen password does not match the security guidelines. It has to be at least {chars} chars in length and have a strength of \\"{strength}\\".';
$wb['weak_password_length_txt'] = 'The chosen password does not match the security guidelines. It has to be at least {chars} chars in length.';
$wb['security_check1_txt'] = 'Check for security permission:';
$wb['security_check2_txt'] = 'failed.';
?>
interface/lib/lang/br.lng
@@ -147,4 +147,6 @@
$wb['strength_5'] = 'Very Strong';
$wb['weak_password_txt'] = 'The chosen password does not match the security guidelines. It has to be at least {chars} chars in length and have a strength of \\"{strength}\\".';
$wb['weak_password_length_txt'] = 'The chosen password does not match the security guidelines. It has to be at least {chars} chars in length.';
$wb['security_check1_txt'] = 'Check for security permission:';
$wb['security_check2_txt'] = 'failed.';
?>
interface/lib/lang/cz.lng
@@ -147,4 +147,6 @@
$wb['strength_5'] = 'Velmi silná';
$wb['weak_password_txt'] = 'Zvolené heslo neodpovídá požadavkům zásad pro tvorbu hesel. Heslo musí být alespoň {chars} znaků dlouhé a mající sílu \\"{strength}\\".';
$wb['weak_password_length_txt'] = 'Zvolené heslo neodpovídá požadavkům zásad pro tvorbu hesel. Heslo musí být alespoň {chars} znaků dlouhé.';
$wb['security_check1_txt'] = 'Check for security permission:';
$wb['security_check2_txt'] = 'failed.';
?>
interface/lib/lang/de.lng
@@ -147,4 +147,6 @@
$wb['strength_5'] = 'Sehr stark';
$wb['weak_password_txt'] = 'Das gewählte Passwort erfüllt die Sicherheitsanforderungen nicht. Es muss mindestens {chars} Zeichen lang sein und die Stärke \\"{strength}\\" besitzen.';
$wb['weak_password_length_txt'] = 'Das gewählte Passwort erfüllt die Sicherheitsanforderungen nicht. Es muss mindestens {chars} Zeichen lang sein.';
$wb['security_check1_txt'] = 'Sicherheitsüberprüfung für:';
$wb['security_check2_txt'] = 'fehlgeschlagen.';
?>
interface/lib/lang/el.lng
@@ -147,4 +147,6 @@
$wb['strength_5'] = 'Very Strong';
$wb['weak_password_txt'] = 'The chosen password does not match the security guidelines. It has to be at least {chars} chars in length and have a strength of \\"{strength}\\".';
$wb['weak_password_length_txt'] = 'The chosen password does not match the security guidelines. It has to be at least {chars} chars in length.';
$wb['security_check1_txt'] = 'Check for security permission:';
$wb['security_check2_txt'] = 'failed.';
?>
interface/lib/lang/en.lng
@@ -131,7 +131,6 @@
$wb['datalog_status_i_web_folder_user'] = 'Create folder protection user';
$wb['datalog_status_u_web_folder_user'] = 'Update folder protection user';
$wb['datalog_status_d_web_folder_user'] = 'Delete folder protection user';
$wb['login_as_txt'] = 'Log in as';
$wb["no_domain_perm"] = 'You have no permission for this domain.';
$wb["no_destination_perm"] = 'You have no permission for this destination.';
@@ -149,5 +148,6 @@
$wb['strength_5'] = 'Very Strong';
$wb['weak_password_txt'] = 'The chosen password does not match the security guidelines. It has to be at least {chars} chars in length and have a strength of "{strength}".';
$wb['weak_password_length_txt'] = 'The chosen password does not match the security guidelines. It has to be at least {chars} chars in length.';
?>
$wb['security_check1_txt'] = 'Check for security permission:';
$wb['security_check2_txt'] = 'failed.';
?>
interface/lib/lang/es.lng
@@ -147,4 +147,6 @@
$wb['strength_5'] = 'Very Strong';
$wb['weak_password_txt'] = 'The chosen password does not match the security guidelines. It has to be at least {chars} chars in length and have a strength of \\"{strength}\\".';
$wb['weak_password_length_txt'] = 'The chosen password does not match the security guidelines. It has to be at least {chars} chars in length.';
$wb['security_check1_txt'] = 'Check for security permission:';
$wb['security_check2_txt'] = 'failed.';
?>
interface/lib/lang/fi.lng
@@ -147,4 +147,6 @@
$wb['strength_5'] = 'Very Strong';
$wb['weak_password_txt'] = 'The chosen password does not match the security guidelines. It has to be at least {chars} chars in length and have a strength of \\"{strength}\\".';
$wb['weak_password_length_txt'] = 'The chosen password does not match the security guidelines. It has to be at least {chars} chars in length.';
$wb['security_check1_txt'] = 'Check for security permission:';
$wb['security_check2_txt'] = 'failed.';
?>
interface/lib/lang/fr.lng
@@ -147,4 +147,6 @@
$wb['strength_5'] = 'Very Strong';
$wb['weak_password_txt'] = 'The chosen password does not match the security guidelines. It has to be at least {chars} chars in length and have a strength of \\"{strength}\\".';
$wb['weak_password_length_txt'] = 'The chosen password does not match the security guidelines. It has to be at least {chars} chars in length.';
$wb['security_check1_txt'] = 'Check for security permission:';
$wb['security_check2_txt'] = 'failed.';
?>
interface/lib/lang/hr.lng
@@ -147,4 +147,6 @@
$wb['strength_5'] = 'Very Strong';
$wb['weak_password_txt'] = 'The chosen password does not match the security guidelines. It has to be at least {chars} chars in length and have a strength of \\"{strength}\\".';
$wb['weak_password_length_txt'] = 'The chosen password does not match the security guidelines. It has to be at least {chars} chars in length.';
$wb['security_check1_txt'] = 'Check for security permission:';
$wb['security_check2_txt'] = 'failed.';
?>
interface/lib/lang/hu.lng
@@ -147,4 +147,6 @@
$wb['strength_5'] = 'Very Strong';
$wb['weak_password_txt'] = 'The chosen password does not match the security guidelines. It has to be at least {chars} chars in length and have a strength of \\"{strength}\\".';
$wb['weak_password_length_txt'] = 'The chosen password does not match the security guidelines. It has to be at least {chars} chars in length.';
$wb['security_check1_txt'] = 'Check for security permission:';
$wb['security_check2_txt'] = 'failed.';
?>
interface/lib/lang/id.lng
@@ -147,4 +147,6 @@
$wb['strength_5'] = 'Very Strong';
$wb['weak_password_txt'] = 'The chosen password does not match the security guidelines. It has to be at least {chars} chars in length and have a strength of \\"{strength}\\".';
$wb['weak_password_length_txt'] = 'The chosen password does not match the security guidelines. It has to be at least {chars} chars in length.';
$wb['security_check1_txt'] = 'Check for security permission:';
$wb['security_check2_txt'] = 'failed.';
?>
interface/lib/lang/it.lng
@@ -147,4 +147,6 @@
$wb['strength_5'] = 'Very Strong';
$wb['weak_password_txt'] = 'The chosen password does not match the security guidelines. It has to be at least {chars} chars in length and have a strength of \\"{strength}\\".';
$wb['weak_password_length_txt'] = 'The chosen password does not match the security guidelines. It has to be at least {chars} chars in length.';
$wb['security_check1_txt'] = 'Check for security permission:';
$wb['security_check2_txt'] = 'failed.';
?>
interface/lib/lang/ja.lng
@@ -147,4 +147,6 @@
$wb['strength_5'] = 'Very Strong';
$wb['weak_password_txt'] = 'The chosen password does not match the security guidelines. It has to be at least {chars} chars in length and have a strength of \\"{strength}\\".';
$wb['weak_password_length_txt'] = 'The chosen password does not match the security guidelines. It has to be at least {chars} chars in length.';
$wb['security_check1_txt'] = 'Check for security permission:';
$wb['security_check2_txt'] = 'failed.';
?>
interface/lib/lang/nl.lng
@@ -147,4 +147,6 @@
$wb['strength_5'] = 'Very Strong';
$wb['weak_password_txt'] = 'The chosen password does not match the security guidelines. It has to be at least {chars} chars in length and have a strength of \\"{strength}\\".';
$wb['weak_password_length_txt'] = 'The chosen password does not match the security guidelines. It has to be at least {chars} chars in length.';
$wb['security_check1_txt'] = 'Check for security permission:';
$wb['security_check2_txt'] = 'failed.';
?>
interface/lib/lang/pl.lng
@@ -147,4 +147,6 @@
$wb['strength_5'] = 'Very Strong';
$wb['weak_password_txt'] = 'The chosen password does not match the security guidelines. It has to be at least {chars} chars in length and have a strength of \\"{strength}\\".';
$wb['weak_password_length_txt'] = 'The chosen password does not match the security guidelines. It has to be at least {chars} chars in length.';
$wb['security_check1_txt'] = 'Check for security permission:';
$wb['security_check2_txt'] = 'failed.';
?>
interface/lib/lang/pt.lng
@@ -147,4 +147,6 @@
$wb['strength_5'] = 'Very Strong';
$wb['weak_password_txt'] = 'The chosen password does not match the security guidelines. It has to be at least {chars} chars in length and have a strength of \\"{strength}\\".';
$wb['weak_password_length_txt'] = 'The chosen password does not match the security guidelines. It has to be at least {chars} chars in length.';
$wb['security_check1_txt'] = 'Check for security permission:';
$wb['security_check2_txt'] = 'failed.';
?>
interface/lib/lang/ro.lng
@@ -147,4 +147,6 @@
$wb['strength_5'] = 'Very Strong';
$wb['weak_password_txt'] = 'The chosen password does not match the security guidelines. It has to be at least {chars} chars in length and have a strength of \\"{strength}\\".';
$wb['weak_password_length_txt'] = 'The chosen password does not match the security guidelines. It has to be at least {chars} chars in length.';
$wb['security_check1_txt'] = 'Check for security permission:';
$wb['security_check2_txt'] = 'failed.';
?>
interface/lib/lang/ru.lng
@@ -147,4 +147,6 @@
$wb['strength_5'] = 'Very Strong';
$wb['weak_password_txt'] = 'The chosen password does not match the security guidelines. It has to be at least {chars} chars in length and have a strength of \\"{strength}\\".';
$wb['weak_password_length_txt'] = 'The chosen password does not match the security guidelines. It has to be at least {chars} chars in length.';
$wb['security_check1_txt'] = 'Check for security permission:';
$wb['security_check2_txt'] = 'failed.';
?>
interface/lib/lang/se.lng
@@ -145,6 +145,8 @@
$wb['strength_3'] = 'Bra';
$wb['strength_4'] = 'Starkt';
$wb['strength_5'] = 'Väldigt starkt';
$wb['weak_password_txt'] = 'The chosen password does not match the security guidelines. It has to be at least {chars} chars in length and have a strength of \"{strength}\".';
$wb['weak_password_txt'] = 'The chosen password does not match the security guidelines. It has to be at least {chars} chars in length and have a strength of \\"{strength}\\".';
$wb['weak_password_length_txt'] = 'The chosen password does not match the security guidelines. It has to be at least {chars} chars in length.';
$wb['security_check1_txt'] = 'Check for security permission:';
$wb['security_check2_txt'] = 'failed.';
?>
interface/lib/lang/sk.lng
@@ -147,4 +147,6 @@
$wb['strength_5'] = 'Very Strong';
$wb['weak_password_txt'] = 'The chosen password does not match the security guidelines. It has to be at least {chars} chars in length and have a strength of \\"{strength}\\".';
$wb['weak_password_length_txt'] = 'The chosen password does not match the security guidelines. It has to be at least {chars} chars in length.';
$wb['security_check1_txt'] = 'Check for security permission:';
$wb['security_check2_txt'] = 'failed.';
?>
interface/lib/lang/tr.lng
@@ -147,4 +147,6 @@
$wb['strength_5'] = 'Very Strong';
$wb['weak_password_txt'] = 'The chosen password does not match the security guidelines. It has to be at least {chars} chars in length and have a strength of \\"{strength}\\".';
$wb['weak_password_length_txt'] = 'The chosen password does not match the security guidelines. It has to be at least {chars} chars in length.';
$wb['security_check1_txt'] = 'Check for security permission:';
$wb['security_check2_txt'] = 'failed.';
?>
interface/lib/plugins/vm_openvz_plugin.inc.php
@@ -33,7 +33,7 @@
    function openvz_vm_insert($event_name, $page_form) {
        global $app, $conf;
        $this->id = $page_form->id;
        $this->id = $app->functions->intval($page_form->id);
        $this->dataRecord = $page_form->dataRecord;
        $this->oldDataRecord = $page_form->oldDataRecord;
@@ -58,7 +58,7 @@
        $this->applyTemplate();
        // Set the IP address
        $app->db->query("UPDATE openvz_ip SET vm_id = ".$this->id." WHERE ip_address = '".$this->dataRecord['ip_address']."'");
        $app->db->query("UPDATE openvz_ip SET vm_id = ".$this->id." WHERE ip_address = '".$app->db->quote($this->dataRecord['ip_address'])."'");
        // Create the OpenVZ config file and store it in config field
        $this->makeOpenVZConfig();
@@ -74,7 +74,7 @@
    function openvz_vm_update($event_name, $page_form) {
        global $app, $conf;
        $this->id = $page_form->id;
        $this->id = $app->functions->intval($page_form->id);
        $this->dataRecord = $page_form->dataRecord;
        $this->oldDataRecord = $page_form->oldDataRecord;
@@ -94,7 +94,7 @@
        }
        // Set the IP address
        if(isset($this->dataRecord['ip_address'])) $app->db->query("UPDATE openvz_ip SET vm_id = ".$this->id." WHERE ip_address = '".$this->dataRecord['ip_address']."'");
        if(isset($this->dataRecord['ip_address'])) $app->db->query("UPDATE openvz_ip SET vm_id = ".$this->id." WHERE ip_address = '".$app->db->quote($this->dataRecord['ip_address'])."'");
        // Create the OpenVZ config file and store it in config field
        $this->makeOpenVZConfig();
@@ -111,7 +111,7 @@
        global $app, $conf;
        //* Free the IP address
        $tmp = $app->db->queryOneRecord("SELECT ip_address_id FROM openvz_ip WHERE vm_id = ".$page_form->id);
        $tmp = $app->db->queryOneRecord("SELECT ip_address_id FROM openvz_ip WHERE vm_id = ".$app->functions->intval($page_form->id));
        $app->db->datalogUpdate('openvz_ip', 'vm_id = 0', 'ip_address_id', $tmp['ip_address_id']);
        unset($tmp);
@@ -120,20 +120,20 @@
    private function applyTemplate() {
        global $app, $conf;
        $tpl = $app->db->queryOneRecord("SELECT * FROM openvz_template WHERE template_id = ".$this->dataRecord["template_id"]);
        $tpl = $app->db->queryOneRecord("SELECT * FROM openvz_template WHERE template_id = ".$app->functions->intval($this->dataRecord["template_id"]));
        $sql = "UPDATE openvz_vm SET ";
        $sql .= "diskspace = '".$tpl['diskspace']."', ";
        $sql .= "ram = '".$tpl['ram']."', ";
        $sql .= "ram_burst = '".$tpl['ram_burst']."', ";
        $sql .= "cpu_units = '".$tpl['cpu_units']."', ";
        $sql .= "cpu_num = '".$tpl['cpu_num']."', ";
        $sql .= "cpu_limit = '".$tpl['cpu_limit']."', ";
        $sql .= "io_priority = '".$tpl['io_priority']."', ";
        $sql .= "nameserver = '".$tpl['nameserver']."', ";
        $sql .= "create_dns = '".$tpl['create_dns']."', ";
        $sql .= "capability = '".$tpl['capability']."' ";
        $sql .= "WHERE vm_id = ".$this->id;
        $sql .= "diskspace = '".$app->db->quote($tpl['diskspace'])."', ";
        $sql .= "ram = '".$app->db->quote($tpl['ram'])."', ";
        $sql .= "ram_burst = '".$app->db->quote($tpl['ram_burst'])."', ";
        $sql .= "cpu_units = '".$app->db->quote($tpl['cpu_units'])."', ";
        $sql .= "cpu_num = '".$app->db->quote($tpl['cpu_num'])."', ";
        $sql .= "cpu_limit = '".$app->db->quote($tpl['cpu_limit'])."', ";
        $sql .= "io_priority = '".$app->db->quote($tpl['io_priority'])."', ";
        $sql .= "nameserver = '".$app->db->quote($tpl['nameserver'])."', ";
        $sql .= "create_dns = '".$app->db->quote($tpl['create_dns'])."', ";
        $sql .= "capability = '".$app->db->quote($tpl['capability'])."' ";
        $sql .= "WHERE vm_id = ".$app->functions->intval($this->id);
        $app->db->query($sql);
    }
@@ -141,8 +141,8 @@
    private function makeOpenVZConfig() {
        global $app, $conf;
        $vm = $app->db->queryOneRecord("SELECT * FROM openvz_vm WHERE vm_id = ".$this->id);
        $vm_template = $app->db->queryOneRecord("SELECT * FROM openvz_template WHERE template_id = ".$vm['template_id']);
        $vm = $app->db->queryOneRecord("SELECT * FROM openvz_vm WHERE vm_id = ".$app->functions->intval($this->id));
        $vm_template = $app->db->queryOneRecord("SELECT * FROM openvz_template WHERE template_id = ".$app->functions->intval($vm['template_id']));
        $burst_ram = $vm['ram_burst']*256;
        $guar_ram = $vm['ram']*256;
@@ -194,12 +194,12 @@
        $tpl->setVar('nameserver', $vm['nameserver']);
        $tpl->setVar('capability', $vm['capability']);
        $tmp = $app->db->queryOneRecord("SELECT template_file FROM openvz_ostemplate WHERE ostemplate_id = ".$vm['ostemplate_id']);
        $tmp = $app->db->queryOneRecord("SELECT template_file FROM openvz_ostemplate WHERE ostemplate_id = ".$app->functions->intval($vm['ostemplate_id']));
        $tpl->setVar('ostemplate', $tmp['template_file']);
        unset($tmp);
        $openvz_config = $app->db->quote($tpl->grab());
        $app->db->query("UPDATE openvz_vm SET config = '".$openvz_config."' WHERE vm_id = ".$this->id);
        $app->db->query("UPDATE openvz_vm SET config = '".$openvz_config."' WHERE vm_id = ".$app->functions->intval($this->id));
        unset($tpl);
@@ -208,33 +208,33 @@
    private function createDNS() {
        global $app, $conf;
        $vm = $app->db->queryOneRecord("SELECT * FROM openvz_vm WHERE vm_id = ".$this->id);
        $vm = $app->db->queryOneRecord("SELECT * FROM openvz_vm WHERE vm_id = ".$app->functions->intval($this->id));
        if($vm['create_dns'] != 'y') return;
        $full_hostname = str_replace('{VEID}', $vm['veid'], $vm['hostname']);
        $hostname_parts = explode('.', $full_hostname);
        $hostname = $hostname_parts[0];
        $hostname = $app->db->quote($hostname_parts[0]);
        unset($hostname_parts[0]);
        $zone = implode('.', $hostname_parts);
        $zone = $app->db->quote((implode('.', $hostname_parts)));
        unset($hostname_parts);
        // Find the dns zone
        $zone_rec = $app->db->queryOneRecord("SELECT * FROM dns_soa WHERE origin = '$zone.'");
        $rr_rec = $app->db->queryOneRecord("SELECT * FROM dns_rr WHERE zone = '".$zone_rec['id']."' AND name = '$hostname'");
        $zone_rec = $app->db->queryOneRecord("SELECT * FROM dns_soa WHERE origin = '".$app->db->quote($zone).".'");
        $rr_rec = $app->db->queryOneRecord("SELECT * FROM dns_rr WHERE zone = '".$app->functions->intval($zone_rec['id'])."' AND name = '".$app->db->quote($hostname)."'");
        if($zone_rec['id'] > 0) {
            $ip_address = $vm['ip_address'];
            $sys_userid = $zone_rec['sys_userid'];
            $sys_groupid = $zone_rec['sys_groupid'];
            $server_id = $zone_rec['server_id'];
            $dns_soa_id = $zone_rec['id'];
            $ip_address = $app->db->quote($vm['ip_address']);
            $sys_userid = $app->functions->intval($zone_rec['sys_userid']);
            $sys_groupid = $app->functions->intval($zone_rec['sys_groupid']);
            $server_id = $app->functions->intval($zone_rec['server_id']);
            $dns_soa_id = $app->functions->intval($zone_rec['id']);
            if($rr_rec['id'] > 0) {
                $app->uses('validate_dns');
                $app->db->datalogUpdate('dns_rr', "data = '$ip_address'", 'id', $rr_rec['id']);
                $app->db->datalogUpdate('dns_rr', "data = '$ip_address'", 'id', $app->functions->intval($rr_rec['id']));
                $serial = $app->validate_dns->increase_serial($zone_rec['serial']);
                $app->db->datalogUpdate('dns_soa', "serial = '$serial'", 'id', $zone_rec['id']);
                $app->db->datalogUpdate('dns_soa', "serial = '$serial'", 'id', $app->functions->intval($zone_rec['id']));
            } else {
                $insert_data = "(`sys_userid`, `sys_groupid`, `sys_perm_user`, `sys_perm_group`, `sys_perm_other`, `server_id`, `zone`, `name`, `type`, `data`, `aux`, `ttl`, `active`) VALUES
                ('$sys_userid', '$sys_groupid', 'riud', 'riud', '', '$server_id', '$dns_soa_id', '$hostname', 'A', '$ip_address', '0', '3600', 'Y')";
interface/temp/empty.dir
interface/web/admin/firewall_del.php
@@ -44,6 +44,7 @@
//* Check permissions for module
$app->auth->check_module_permissions('admin');
$app->auth->check_security_permissions('admin_allow_firewall_config');
$app->uses("tform_actions");
$app->tform_actions->onDelete();
interface/web/admin/firewall_edit.php
@@ -43,6 +43,7 @@
//* Check permissions for module
$app->auth->check_module_permissions('admin');
$app->auth->check_security_permissions('admin_allow_firewall_config');
// Loading classes
$app->uses('tpl,tform,tform_actions');
interface/web/admin/groups_del.php
@@ -44,6 +44,7 @@
//* Check permissions for module
$app->auth->check_module_permissions('admin');
$app->auth->check_security_permissions('admin_allow_cpuser_group');
$app->uses("tform_actions");
$app->tform_actions->onDelete();
interface/web/admin/groups_edit.php
@@ -43,6 +43,7 @@
//* Check permissions for module
$app->auth->check_module_permissions('admin');
$app->auth->check_security_permissions('admin_allow_cpuser_group');
// Loading classes
$app->uses('tpl,tform,tform_actions');
interface/web/admin/iptables_del.php
@@ -1,4 +1,5 @@
<?php
die('unused');
/*
Copyright (c) 2011, Andrew "lathama" Latham, Till Brehm, projektfarm Gmbh
All rights reserved.
interface/web/admin/iptables_edit.php
@@ -1,4 +1,5 @@
<?php
die('unused');
/*
Copyright (c) 2011, Andrew "lathama" Latham, Till Brehm, projektfarm Gmbh
All rights reserved.
interface/web/admin/iptables_list.php
@@ -1,4 +1,6 @@
<?php
die('unused');
/*
Copyright (c) 2011, Andrew "lathama" Latham, Till Brehm, projektfarm Gmbh
All rights reserved.
interface/web/admin/language_add.php
@@ -32,6 +32,7 @@
//* Check permissions for module
$app->auth->check_module_permissions('admin');
$app->auth->check_security_permissions('admin_allow_langedit');
//* This is only allowed for administrators
if(!$app->auth->is_admin()) die('only allowed for administrators.');
interface/web/admin/language_complete.php
@@ -32,6 +32,7 @@
//* Check permissions for module
$app->auth->check_module_permissions('admin');
$app->auth->check_security_permissions('admin_allow_langedit');
if($conf['demo_mode'] == true) $app->error('This function is disabled in demo mode.');
//* This is only allowed for administrators
interface/web/admin/language_edit.php
@@ -32,6 +32,7 @@
//* Check permissions for module
$app->auth->check_module_permissions('admin');
$app->auth->check_security_permissions('admin_allow_langedit');
//* This is only allowed for administrators
if(!$app->auth->is_admin()) die('only allowed for administrators.');
interface/web/admin/language_export.php
@@ -32,6 +32,7 @@
//* Check permissions for module
$app->auth->check_module_permissions('admin');
$app->auth->check_security_permissions('admin_allow_langedit');
//* This is only allowed for administrators
if(!$app->auth->is_admin()) die('only allowed for administrators.');
interface/web/admin/language_import.php
@@ -112,6 +112,7 @@
//* Check permissions for module
$app->auth->check_module_permissions('admin');
$app->auth->check_security_permissions('admin_allow_langedit');
//* This is only allowed for administrators
if(!$app->auth->is_admin()) die('only allowed for administrators.');
interface/web/admin/lib/lang/cz.lng
@@ -34,7 +34,7 @@
$wb['Domains'] = 'Domény';
$wb['Misc'] = 'Různé';
$wb['Software'] = 'Software';
$wb['Repositories'] = 'Repozitáře';
$wb['Repositories'] = 'Zdroje repozitářů';
$wb['Packages'] = 'Balíčky';
$wb['Updates'] = 'Aktualizace';
$wb['Language Editor'] = 'Jazykový editor';
interface/web/admin/lib/lang/cz_package_install.lng
@@ -1,5 +1,5 @@
<?php
$wb['repo_name_txt'] = 'Repozitář';
$wb['repo_name_txt'] = 'Název zdroje';
$wb['repo_url_txt'] = 'URL';
$wb['repo_username_txt'] = 'Uživatel (volitelné)';
$wb['repo_password_txt'] = 'Heslo (volitelné)';
interface/web/admin/lib/lang/cz_remote_action.lng
@@ -2,9 +2,9 @@
$wb['select_server_txt'] = 'Zvolit server';
$wb['btn_do_txt'] = 'Provést akci';
$wb['do_osupdate_caption'] = 'Aktualizace operačního systému na vzdáleném serveru.';
$wb['do_osupdate_desc'] = 'Tato akce provede \\"aptitude -y\\" aktualizaci na vybraném serveru.<br><br><strong>POUŽITÍ TÉTO AKCE NA VLASTNÍ NEBEZPEČÍ !</strong>';
$wb['do_osupdate_desc'] = 'Tato akce provede \"aptitude -y\" aktualizaci na vybraném serveru.<br><br><strong>POUŽITÍ TÉTO AKCE NA VLASTNÍ NEBEZPEČÍ !</strong>';
$wb['do_ispcupdate_caption'] = 'Provedení ISPConfig 3 - aktualizace na vzdáleném serveru';
$wb['do_ispcupdate_desc'] = 'Tato akce provede \\"ISPConfig 3\\" aktualizaci na vašem vybraném serveru.<br><br><strong>POUŽITÍ TÉTO AKCE NA VLASTNÍ NEBEZPEČÍ !</strong>';
$wb['do_ispcupdate_desc'] = 'Tato akce provede \"ISPConfig 3\" aktualizaci na vašem vybraném serveru.<br><br><strong>POUŽITÍ TÉTO AKCE NA VLASTNÍ NEBEZPEČÍ !</strong>';
$wb['action_scheduled'] = 'Akce je naplánována na provedení';
$wb['select_all_server'] = 'Všechny servery';
$wb['ispconfig_update_title'] = 'ISPConfig pokyny k aktualizaci';
interface/web/admin/lib/lang/cz_server_config.lng
@@ -145,10 +145,10 @@
$wb['try_rescue_txt'] = 'Povolit monitorování služeb a restartovat při selhání';
$wb['do_not_try_rescue_mysql_txt'] = 'Zakázat MySQL monitorování';
$wb['do_not_try_rescue_mail_txt'] = 'Zakázat E-mail monitorování';
$wb['rescue_description_txt'] = '<b>Informace:</b> Pokud chcete např. vypnout MySQL monitorování zatrhněte políčko \\"Zakázat MySQL monitorování\\" změna se provede do 2-3 minut.<br>Pokud nepočkáte 2-3 minuty, monitorování restartuje mysql!!';
$wb['rescue_description_txt'] = '<b>Informace:</b> Pokud chcete např. vypnout MySQL monitorování zatrhněte políčko \"Zakázat MySQL monitorování\" změna se provede do 2-3 minut.<br>Pokud nepočkáte 2-3 minuty, monitorování restartuje mysql!!';
$wb['enable_sni_txt'] = 'Aktivovat SNI (Server Name Indication)';
$wb['do_not_try_rescue_httpd_txt'] = 'Zakázat HTTPD monitorování';
$wb['set_folder_permissions_on_update_txt'] = 'Set folder permissions on update';
$wb['set_folder_permissions_on_update_txt'] = 'Nastavení oprávnění složky při aktualizaci';
$wb['add_web_users_to_sshusers_group_txt'] = 'Add web users to -sshusers- group';
$wb['connect_userid_to_webid_txt'] = 'Connect Linux userid to webid';
$wb['connect_userid_to_webid_start_txt'] = 'Start ID for userid/webid connect';
interface/web/admin/lib/lang/cz_software_repo.lng
@@ -1,8 +1,8 @@
<?php
$wb['repo_name_txt'] = 'Repozitář';
$wb['repo_name_txt'] = 'Název zdroje';
$wb['repo_url_txt'] = 'URL';
$wb['repo_username_txt'] = 'Uživatel (volitelné)';
$wb['repo_password_txt'] = 'Heslo (volitelné)';
$wb['active_txt'] = 'Aktivní';
$wb['Software Repository which may contain addons or updates'] = 'Software Repository which may contain addons or updates';
$wb['Software Repository which may contain addons or updates'] = 'Softwarové zdroje, které mohou obsahovat addony nebo aktualizace';
?>
interface/web/admin/lib/lang/cz_software_repo_list.lng
@@ -1,6 +1,6 @@
<?php
$wb['list_head_txt'] = 'Repozitář';
$wb['list_head_txt'] = 'Zdroje repozitářů';
$wb['active_txt'] = 'Aktivní';
$wb['repo_name_txt'] = 'Repozitář';
$wb['repo_name_txt'] = 'Název zdroje';
$wb['repo_url_txt'] = 'URL';
?>
interface/web/admin/lib/lang/cz_system_config.lng
@@ -64,7 +64,7 @@
$wb['customer_no_start_txt'] = 'Zákaznické číslo - počáteční hodnota';
$wb['customer_no_counter_txt'] = 'Zákaznické číslo -  čítač';
$wb['session_timeout_txt'] = 'Časový limit relace (minuty)';
$wb['session_allow_endless_txt'] = 'Enable \\"stay logged in\\"';
$wb['session_allow_endless_txt'] = 'Povolit - zůstat přihlášen';
$wb['No'] = 'Ne';
$wb['min_password_length_txt'] = 'Minimální délka hesla';
$wb['min_password_strength_txt'] = 'Minimální síla hesla';
interface/web/admin/lib/lang/se_system_config.lng
@@ -64,7 +64,7 @@
$wb['customer_no_start_txt'] = 'Kundnummer startvärde';
$wb['customer_no_counter_txt'] = 'Kundnummer räknare';
$wb['session_timeout_txt'] = 'Session timeout (minuter)';
$wb['session_allow_endless_txt'] = 'Aktivera \"håll mig inloggad\"';
$wb['session_allow_endless_txt'] = 'Aktivera \\"håll mig inloggad\\"';
$wb['No'] = 'Nej';
$wb['min_password_length_txt'] = 'Minsta lösenordslängd';
$wb['min_password_strength_txt'] = 'Minsta lösenordsstyrka';
interface/web/admin/remote_action_osupdate.php
@@ -32,6 +32,7 @@
//* Check permissions for module
$app->auth->check_module_permissions('admin');
$app->auth->check_security_permissions('admin_allow_osupdate');
//* This is only allowed for administrators
if(!$app->auth->is_admin()) die('only allowed for administrators.');
interface/web/admin/remote_user_del.php
@@ -44,6 +44,7 @@
//* Check permissions for module
$app->auth->check_module_permissions('admin');
$app->auth->check_security_permissions('admin_allow_remote_users');
$app->uses('tpl,tform');
$app->load('tform_actions');
interface/web/admin/remote_user_edit.php
@@ -13,6 +13,9 @@
    die;
}
$app->auth->check_module_permissions('admin');
$app->auth->check_security_permissions('admin_allow_remote_users');
// Disable this function in demo mode
if($conf['demo_mode'] == true) $app->error('This function is disabled in demo mode.');
interface/web/admin/server_config_del.php
@@ -44,6 +44,7 @@
//* Check permissions for module
$app->auth->check_module_permissions('admin');
$app->auth->check_security_permissions('admin_allow_server_config');
if($conf['demo_mode'] == true) $app->error('This function is disabled in demo mode.');
$app->uses("tform_actions");
interface/web/admin/server_config_edit.php
@@ -43,6 +43,8 @@
//* Check permissions for module
$app->auth->check_module_permissions('admin');
$app->auth->check_security_permissions('admin_allow_server_config');
// Loading classes
$app->uses('tpl,tform,tform_actions');
interface/web/admin/server_del.php
@@ -44,6 +44,7 @@
//* Check permissions for module
$app->auth->check_module_permissions('admin');
$app->auth->check_security_permissions('admin_allow_server_services');
if($conf['demo_mode'] == true) $app->error('This function is disabled in demo mode.');
$app->uses("tform_actions");
interface/web/admin/server_edit.php
@@ -43,6 +43,7 @@
//* Check permissions for module
$app->auth->check_module_permissions('admin');
$app->auth->check_security_permissions('admin_allow_server_services');
// Loading classes
$app->uses('tpl,tform,tform_actions');
interface/web/admin/server_ip_del.php
@@ -44,6 +44,7 @@
//* Check permissions for module
$app->auth->check_module_permissions('admin');
$app->auth->check_security_permissions('admin_allow_server_ip');
$app->uses("tform_actions");
$app->tform_actions->onDelete();
interface/web/admin/server_ip_edit.php
@@ -43,6 +43,7 @@
//* Check permissions for module
$app->auth->check_module_permissions('admin');
$app->auth->check_security_permissions('admin_allow_server_ip');
// Loading classes
$app->uses('tpl,tform,tform_actions');
interface/web/admin/server_php_del.php
@@ -44,6 +44,7 @@
//* Check permissions for module
$app->auth->check_module_permissions('admin');
$app->auth->check_security_permissions('admin_allow_server_php');
$app->uses("tform_actions");
$app->tform_actions->onDelete();
interface/web/admin/server_php_edit.php
@@ -43,6 +43,7 @@
//* Check permissions for module
$app->auth->check_module_permissions('admin');
$app->auth->check_security_permissions('admin_allow_server_php');
// Loading classes
$app->uses('tpl,tform,tform_actions');
interface/web/admin/software_package_del.php
@@ -33,6 +33,7 @@
//* Check permissions for module
$app->auth->check_module_permissions('admin');
$app->auth->check_security_permissions('admin_allow_software_packages');
if($conf['demo_mode'] == true) $app->error('This function is disabled in demo mode.');
$software_update_inst_id = $app->functions->intval($_GET['software_update_inst_id']);
interface/web/admin/software_package_edit.php
@@ -43,6 +43,7 @@
//* Check permissions for module
$app->auth->check_module_permissions('admin');
$app->auth->check_security_permissions('admin_allow_software_packages');
if($conf['demo_mode'] == true) $app->error('This function is disabled in demo mode.');
// Loading classes
interface/web/admin/software_package_install.php
@@ -33,6 +33,7 @@
//* Check permissions for module
$app->auth->check_module_permissions('admin');
$app->auth->check_security_permissions('admin_allow_software_packages');
//* This is only allowed for administrators
if(!$app->auth->is_admin()) die('only allowed for administrators.');
interface/web/admin/software_repo_del.php
@@ -44,6 +44,7 @@
//* Check permissions for module
$app->auth->check_module_permissions('admin');
$app->auth->check_security_permissions('admin_allow_software_repo');
if($conf['demo_mode'] == true) $app->error('This function is disabled in demo mode.');
$app->uses("tform_actions");
interface/web/admin/software_repo_edit.php
@@ -43,6 +43,7 @@
//* Check permissions for module
$app->auth->check_module_permissions('admin');
$app->auth->check_security_permissions('admin_allow_software_repo');
if($conf['demo_mode'] == true) $app->error('This function is disabled in demo mode.');
// Loading classes
interface/web/admin/software_update_list.php
@@ -33,6 +33,7 @@
//* Check permissions for module
$app->auth->check_module_permissions('admin');
$app->auth->check_security_permissions('admin_allow_software_packages');
//* This is only allowed for administrators
if(!$app->auth->is_admin()) die('only allowed for administrators.');
interface/web/admin/system_config_edit.php
@@ -43,6 +43,7 @@
//* Check permissions for module
$app->auth->check_module_permissions('admin');
$app->auth->check_security_permissions('admin_allow_system_config');
// Loading classes
$app->uses('tpl,tform,tform_actions');
interface/web/admin/tpl_default.php
@@ -1,4 +1,5 @@
<?php
die('unused');
/*
Copyright (c) 2007, Till Brehm, projektfarm Gmbh
All rights reserved.
interface/web/admin/users_del.php
@@ -44,6 +44,7 @@
//* Check permissions for module
$app->auth->check_module_permissions('admin');
$app->auth->check_security_permissions('admin_allow_del_cpuser');
if($conf['demo_mode'] == true && $_REQUEST['id'] <= 3) $app->error('This function is disabled in demo mode.');
$app->uses("tform_actions");
interface/web/admin/users_edit.php
@@ -52,10 +52,18 @@
    function onBeforeInsert() {
        global $app, $conf;
        //* Security settings check
        if(isset($this->dataRecord['typ']) && $this->dataRecord['typ'][0] == 'admin') {
            $app->auth->check_security_permissions('admin_allow_new_admin');
        }
        if(!in_array($this->dataRecord['startmodule'], $this->dataRecord['modules'])) {
            $app->tform->errorMessage .= $app->tform->wordbook['startmodule_err'];
        }
    }
    function onBeforeUpdate() {
@@ -63,6 +71,11 @@
        if($conf['demo_mode'] == true && $_REQUEST['id'] <= 3) $app->error('This function is disabled in demo mode.');
        //* Security settings check
        if(isset($this->dataRecord['typ']) && $this->dataRecord['typ'][0] == 'admin') {
            $app->auth->check_security_permissions('admin_allow_new_admin');
        }
        if(@is_array($this->dataRecord['modules']) && !in_array($this->dataRecord['startmodule'], $this->dataRecord['modules'])) {
            $app->tform->errorMessage .= $app->tform->wordbook['startmodule_err'];
        }
interface/web/client/lib/lang/se_client.lng
@@ -139,7 +139,7 @@
$wb['customer_no_error_unique'] = 'The customer no. must be unique (or empty).';
$wb['paypal_email_error_isemail'] = 'Please enter a valid PayPal email address.';
$wb['paypal_email_txt'] = 'PayPal epostadress';
$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \"custom\" is selected.';
$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \\"custom\\" is selected.';
$wb['aps_limits_txt'] = 'APS Installer Limits';
$wb['limit_aps_txt'] = 'Max. number of APS instances';
$wb['limit_aps_error_notint'] = 'The APS instances limit must be a number.';
interface/web/designer/form/empty.dir
File was deleted
interface/web/designer/form_edit.php
File was deleted
interface/web/designer/form_list.php
File was deleted
interface/web/designer/form_show.php
File was deleted
interface/web/designer/index.php
File was deleted
interface/web/designer/lib/admin.conf.php
File was deleted
interface/web/designer/lib/lang/ar.lng
File was deleted
interface/web/designer/lib/lang/ar_form_edit.lng
File was deleted
interface/web/designer/lib/lang/ar_form_list.lng
File was deleted
interface/web/designer/lib/lang/ar_form_show.lng
File was deleted
interface/web/designer/lib/lang/ar_module_edit.lng
File was deleted
interface/web/designer/lib/lang/ar_module_list.lng
File was deleted
interface/web/designer/lib/lang/ar_module_nav_edit.lng
File was deleted
interface/web/designer/lib/lang/ar_module_nav_item_edit.lng
File was deleted
interface/web/designer/lib/lang/ar_module_show.lng
File was deleted
interface/web/designer/lib/lang/bg.lng
File was deleted
interface/web/designer/lib/lang/bg_form_edit.lng
File was deleted
interface/web/designer/lib/lang/bg_form_list.lng
File was deleted
interface/web/designer/lib/lang/bg_form_show.lng
File was deleted
interface/web/designer/lib/lang/bg_module_edit.lng
File was deleted
interface/web/designer/lib/lang/bg_module_list.lng
File was deleted
interface/web/designer/lib/lang/bg_module_nav_edit.lng
File was deleted
interface/web/designer/lib/lang/bg_module_nav_item_edit.lng
File was deleted
interface/web/designer/lib/lang/bg_module_show.lng
File was deleted
interface/web/designer/lib/lang/br.lng
File was deleted
interface/web/designer/lib/lang/br_form_edit.lng
File was deleted
interface/web/designer/lib/lang/br_form_list.lng
File was deleted
interface/web/designer/lib/lang/br_form_show.lng
File was deleted
interface/web/designer/lib/lang/br_module_edit.lng
File was deleted
interface/web/designer/lib/lang/br_module_list.lng
File was deleted
interface/web/designer/lib/lang/br_module_nav_edit.lng
File was deleted
interface/web/designer/lib/lang/br_module_nav_item_edit.lng
File was deleted
interface/web/designer/lib/lang/br_module_show.lng
File was deleted
interface/web/designer/lib/lang/cz.lng
File was deleted
interface/web/designer/lib/lang/cz_form_edit.lng
File was deleted
interface/web/designer/lib/lang/cz_form_list.lng
File was deleted
interface/web/designer/lib/lang/cz_form_show.lng
File was deleted
interface/web/designer/lib/lang/cz_module_edit.lng
File was deleted
interface/web/designer/lib/lang/cz_module_list.lng
File was deleted
interface/web/designer/lib/lang/cz_module_nav_edit.lng
File was deleted
interface/web/designer/lib/lang/cz_module_nav_item_edit.lng
File was deleted
interface/web/designer/lib/lang/cz_module_show.lng
File was deleted
interface/web/designer/lib/lang/de.lng
File was deleted
interface/web/designer/lib/lang/de_form_edit.lng
File was deleted
interface/web/designer/lib/lang/de_form_list.lng
File was deleted
interface/web/designer/lib/lang/de_form_show.lng
File was deleted
interface/web/designer/lib/lang/de_module_edit.lng
File was deleted
interface/web/designer/lib/lang/de_module_list.lng
File was deleted
interface/web/designer/lib/lang/de_module_nav_edit.lng
File was deleted
interface/web/designer/lib/lang/de_module_nav_item_edit.lng
File was deleted
interface/web/designer/lib/lang/de_module_show.lng
File was deleted
interface/web/designer/lib/lang/el.lng
File was deleted
interface/web/designer/lib/lang/el_form_edit.lng
File was deleted
interface/web/designer/lib/lang/el_form_list.lng
File was deleted
interface/web/designer/lib/lang/el_form_show.lng
File was deleted
interface/web/designer/lib/lang/el_module_edit.lng
File was deleted
interface/web/designer/lib/lang/el_module_list.lng
File was deleted
interface/web/designer/lib/lang/el_module_nav_edit.lng
File was deleted
interface/web/designer/lib/lang/el_module_nav_item_edit.lng
File was deleted
interface/web/designer/lib/lang/el_module_show.lng
File was deleted
interface/web/designer/lib/lang/en.lng
File was deleted
interface/web/designer/lib/lang/en_form_edit.lng
File was deleted
interface/web/designer/lib/lang/en_form_list.lng
File was deleted
interface/web/designer/lib/lang/en_form_show.lng
File was deleted
interface/web/designer/lib/lang/en_module_edit.lng
File was deleted
interface/web/designer/lib/lang/en_module_list.lng
File was deleted
interface/web/designer/lib/lang/en_module_nav_edit.lng
File was deleted
interface/web/designer/lib/lang/en_module_nav_item_edit.lng
File was deleted
interface/web/designer/lib/lang/en_module_show.lng
File was deleted
interface/web/designer/lib/lang/es.lng
File was deleted
interface/web/designer/lib/lang/es_form_edit.lng
File was deleted
interface/web/designer/lib/lang/es_form_list.lng
File was deleted
interface/web/designer/lib/lang/es_form_show.lng
File was deleted
interface/web/designer/lib/lang/es_module_edit.lng
File was deleted
interface/web/designer/lib/lang/es_module_list.lng
File was deleted
interface/web/designer/lib/lang/es_module_nav_edit.lng
File was deleted
interface/web/designer/lib/lang/es_module_nav_item_edit.lng
File was deleted
interface/web/designer/lib/lang/es_module_show.lng
File was deleted
interface/web/designer/lib/lang/fi.lng
File was deleted
interface/web/designer/lib/lang/fi_form_edit.lng
File was deleted
interface/web/designer/lib/lang/fi_form_list.lng
File was deleted
interface/web/designer/lib/lang/fi_form_show.lng
File was deleted
interface/web/designer/lib/lang/fi_module_edit.lng
File was deleted
interface/web/designer/lib/lang/fi_module_list.lng
File was deleted
interface/web/designer/lib/lang/fi_module_nav_edit.lng
File was deleted
interface/web/designer/lib/lang/fi_module_nav_item_edit.lng
File was deleted
interface/web/designer/lib/lang/fi_module_show.lng
File was deleted
interface/web/designer/lib/lang/fr.lng
File was deleted
interface/web/designer/lib/lang/fr_form_edit.lng
File was deleted
interface/web/designer/lib/lang/fr_form_list.lng
File was deleted
interface/web/designer/lib/lang/fr_form_show.lng
File was deleted
interface/web/designer/lib/lang/fr_module_edit.lng
File was deleted
interface/web/designer/lib/lang/fr_module_list.lng
File was deleted
interface/web/designer/lib/lang/fr_module_nav_edit.lng
File was deleted
interface/web/designer/lib/lang/fr_module_nav_item_edit.lng
File was deleted
interface/web/designer/lib/lang/fr_module_show.lng
File was deleted
interface/web/designer/lib/lang/hr.lng
File was deleted
interface/web/designer/lib/lang/hr_form_edit.lng
File was deleted
interface/web/designer/lib/lang/hr_form_list.lng
File was deleted
interface/web/designer/lib/lang/hr_form_show.lng
File was deleted
interface/web/designer/lib/lang/hr_module_edit.lng
File was deleted
interface/web/designer/lib/lang/hr_module_list.lng
File was deleted
interface/web/designer/lib/lang/hr_module_nav_edit.lng
File was deleted
interface/web/designer/lib/lang/hr_module_nav_item_edit.lng
File was deleted
interface/web/designer/lib/lang/hr_module_show.lng
File was deleted
interface/web/designer/lib/lang/hu.lng
File was deleted
interface/web/designer/lib/lang/hu_form_edit.lng
File was deleted
interface/web/designer/lib/lang/hu_form_list.lng
File was deleted
interface/web/designer/lib/lang/hu_form_show.lng
File was deleted
interface/web/designer/lib/lang/hu_module_edit.lng
File was deleted
interface/web/designer/lib/lang/hu_module_list.lng
File was deleted
interface/web/designer/lib/lang/hu_module_nav_edit.lng
File was deleted
interface/web/designer/lib/lang/hu_module_nav_item_edit.lng
File was deleted
interface/web/designer/lib/lang/hu_module_show.lng
File was deleted
interface/web/designer/lib/lang/id.lng
File was deleted
interface/web/designer/lib/lang/id_form_edit.lng
File was deleted
interface/web/designer/lib/lang/id_form_list.lng
File was deleted
interface/web/designer/lib/lang/id_form_show.lng
File was deleted
interface/web/designer/lib/lang/id_module_edit.lng
File was deleted
interface/web/designer/lib/lang/id_module_list.lng
File was deleted
interface/web/designer/lib/lang/id_module_nav_edit.lng
File was deleted
interface/web/designer/lib/lang/id_module_nav_item_edit.lng
File was deleted
interface/web/designer/lib/lang/id_module_show.lng
File was deleted
interface/web/designer/lib/lang/it.lng
File was deleted
interface/web/designer/lib/lang/it_form_edit.lng
File was deleted
interface/web/designer/lib/lang/it_form_list.lng
File was deleted
interface/web/designer/lib/lang/it_form_show.lng
File was deleted
interface/web/designer/lib/lang/it_module_edit.lng
File was deleted
interface/web/designer/lib/lang/it_module_list.lng
File was deleted
interface/web/designer/lib/lang/it_module_nav_edit.lng
File was deleted
interface/web/designer/lib/lang/it_module_nav_item_edit.lng
File was deleted
interface/web/designer/lib/lang/it_module_show.lng
File was deleted
interface/web/designer/lib/lang/ja.lng
File was deleted
interface/web/designer/lib/lang/ja_form_edit.lng
File was deleted
interface/web/designer/lib/lang/ja_form_list.lng
File was deleted
interface/web/designer/lib/lang/ja_form_show.lng
File was deleted
interface/web/designer/lib/lang/ja_module_edit.lng
File was deleted
interface/web/designer/lib/lang/ja_module_list.lng
File was deleted
interface/web/designer/lib/lang/ja_module_nav_edit.lng
File was deleted
interface/web/designer/lib/lang/ja_module_nav_item_edit.lng
File was deleted
interface/web/designer/lib/lang/ja_module_show.lng
File was deleted
interface/web/designer/lib/lang/nl.lng
File was deleted
interface/web/designer/lib/lang/nl_form_edit.lng
File was deleted
interface/web/designer/lib/lang/nl_form_list.lng
File was deleted
interface/web/designer/lib/lang/nl_form_show.lng
File was deleted
interface/web/designer/lib/lang/nl_module_edit.lng
File was deleted
interface/web/designer/lib/lang/nl_module_list.lng
File was deleted
interface/web/designer/lib/lang/nl_module_nav_edit.lng
File was deleted
interface/web/designer/lib/lang/nl_module_nav_item_edit.lng
File was deleted
interface/web/designer/lib/lang/nl_module_show.lng
File was deleted
interface/web/designer/lib/lang/pl.lng
File was deleted
interface/web/designer/lib/lang/pl_form_edit.lng
File was deleted
interface/web/designer/lib/lang/pl_form_list.lng
File was deleted
interface/web/designer/lib/lang/pl_form_show.lng
File was deleted
interface/web/designer/lib/lang/pl_module_edit.lng
File was deleted
interface/web/designer/lib/lang/pl_module_list.lng
File was deleted
interface/web/designer/lib/lang/pl_module_nav_edit.lng
File was deleted
interface/web/designer/lib/lang/pl_module_nav_item_edit.lng
File was deleted
interface/web/designer/lib/lang/pl_module_show.lng
File was deleted
interface/web/designer/lib/lang/pt.lng
File was deleted
interface/web/designer/lib/lang/pt_form_edit.lng
File was deleted
interface/web/designer/lib/lang/pt_form_list.lng
File was deleted
interface/web/designer/lib/lang/pt_form_show.lng
File was deleted
interface/web/designer/lib/lang/pt_module_edit.lng
File was deleted
interface/web/designer/lib/lang/pt_module_list.lng
File was deleted
interface/web/designer/lib/lang/pt_module_nav_edit.lng
File was deleted
interface/web/designer/lib/lang/pt_module_nav_item_edit.lng
File was deleted
interface/web/designer/lib/lang/pt_module_show.lng
File was deleted
interface/web/designer/lib/lang/ro.lng
File was deleted
interface/web/designer/lib/lang/ro_form_edit.lng
File was deleted
interface/web/designer/lib/lang/ro_form_list.lng
File was deleted
interface/web/designer/lib/lang/ro_form_show.lng
File was deleted
interface/web/designer/lib/lang/ro_module_edit.lng
File was deleted
interface/web/designer/lib/lang/ro_module_list.lng
File was deleted
interface/web/designer/lib/lang/ro_module_nav_edit.lng
File was deleted
interface/web/designer/lib/lang/ro_module_nav_item_edit.lng
File was deleted
interface/web/designer/lib/lang/ro_module_show.lng
File was deleted
interface/web/designer/lib/lang/ru.lng
File was deleted
interface/web/designer/lib/lang/ru_form_edit.lng
File was deleted
interface/web/designer/lib/lang/ru_form_list.lng
File was deleted
interface/web/designer/lib/lang/ru_form_show.lng
File was deleted
interface/web/designer/lib/lang/ru_module_edit.lng
File was deleted
interface/web/designer/lib/lang/ru_module_list.lng
File was deleted
interface/web/designer/lib/lang/ru_module_nav_edit.lng
File was deleted
interface/web/designer/lib/lang/ru_module_nav_item_edit.lng
File was deleted
interface/web/designer/lib/lang/ru_module_show.lng
File was deleted
interface/web/designer/lib/lang/se.lng
File was deleted
interface/web/designer/lib/lang/se_form_edit.lng
File was deleted
interface/web/designer/lib/lang/se_form_list.lng
File was deleted
interface/web/designer/lib/lang/se_form_show.lng
File was deleted
interface/web/designer/lib/lang/se_module_edit.lng
File was deleted
interface/web/designer/lib/lang/se_module_list.lng
File was deleted
interface/web/designer/lib/lang/se_module_nav_edit.lng
File was deleted
interface/web/designer/lib/lang/se_module_nav_item_edit.lng
File was deleted
interface/web/designer/lib/lang/se_module_show.lng
File was deleted
interface/web/designer/lib/lang/sk.lng
File was deleted
interface/web/designer/lib/lang/sk_form_edit.lng
File was deleted
interface/web/designer/lib/lang/sk_form_list.lng
File was deleted
interface/web/designer/lib/lang/sk_form_show.lng
File was deleted
interface/web/designer/lib/lang/sk_module_edit.lng
File was deleted
interface/web/designer/lib/lang/sk_module_list.lng
File was deleted
interface/web/designer/lib/lang/sk_module_nav_edit.lng
File was deleted
interface/web/designer/lib/lang/sk_module_nav_item_edit.lng
File was deleted
interface/web/designer/lib/lang/sk_module_show.lng
File was deleted
interface/web/designer/lib/lang/tr.lng
File was deleted
interface/web/designer/lib/lang/tr_form_edit.lng
File was deleted
interface/web/designer/lib/lang/tr_form_list.lng
File was deleted
interface/web/designer/lib/lang/tr_form_show.lng
File was deleted
interface/web/designer/lib/lang/tr_module_edit.lng
File was deleted
interface/web/designer/lib/lang/tr_module_list.lng
File was deleted
interface/web/designer/lib/lang/tr_module_nav_edit.lng
File was deleted
interface/web/designer/lib/lang/tr_module_nav_item_edit.lng
File was deleted
interface/web/designer/lib/lang/tr_module_show.lng
File was deleted
interface/web/designer/lib/module.conf.php
File was deleted
interface/web/designer/list/empty.dir
File was deleted
interface/web/designer/module_edit.php
File was deleted
interface/web/designer/module_list.php
File was deleted
interface/web/designer/module_nav_del.php
File was deleted
interface/web/designer/module_nav_edit.php
File was deleted
interface/web/designer/module_nav_flip.php
File was deleted
interface/web/designer/module_nav_item_del.php
File was deleted
interface/web/designer/module_nav_item_edit.php
File was deleted
interface/web/designer/module_nav_item_flip.php
File was deleted
interface/web/designer/module_show.php
File was deleted
interface/web/designer/templates/form_edit.htm
File was deleted
interface/web/designer/templates/form_list.htm
File was deleted
interface/web/designer/templates/form_show.htm
File was deleted
interface/web/designer/templates/module_edit.htm
File was deleted
interface/web/designer/templates/module_list.htm
File was deleted
interface/web/designer/templates/module_nav_edit.htm
File was deleted
interface/web/designer/templates/module_nav_item_edit.htm
File was deleted
interface/web/designer/templates/module_show.htm
File was deleted
interface/web/designer/templates/paging.tpl.htm
File was deleted
interface/web/dns/lib/lang/ar_dns_slave_admin_list.lng
@@ -1,10 +1,10 @@
<?php
$wb["list_head_txt"] = 'Secondary DNS-Zones';
$wb["active_txt"] = 'Active';
$wb["server_id_txt"] = 'Server';
$wb["origin_txt"] = 'Zone';
$wb["ns_txt"] = 'NS';
$wb["add_new_record_txt"] = 'Add new Secondary DNS-Zone';
$wb['list_head_txt'] = 'Secondary DNS-Zones';
$wb['active_txt'] = 'Active';
$wb['server_id_txt'] = 'Server';
$wb['origin_txt'] = 'Zone';
$wb['ns_txt'] = 'NS';
$wb['add_new_record_txt'] = 'Add new Secondary DNS-Zone';
$wb['eg_domain_tld'] = 'e.g. domain.tld.';
$wb["sys_groupid_txt"] = 'Client';
$wb['sys_groupid_txt'] = 'Client';
?>
interface/web/dns/lib/lang/ar_dns_soa_admin_list.lng
@@ -1,11 +1,11 @@
<?php
$wb["list_head_txt"] = 'DNS-Zones';
$wb["active_txt"] = 'Active';
$wb["server_id_txt"] = 'Server';
$wb["origin_txt"] = 'Zone';
$wb["ns_txt"] = 'NS';
$wb["mbox_txt"] = 'Email';
$wb["add_new_record_wizard_txt"] = 'Add new DNS Zone with Wizard';
$wb["add_new_record_txt"] = 'Add new DNS Zone manually';
$wb["sys_groupid_txt"] = 'Client';
$wb['list_head_txt'] = 'DNS-Zones';
$wb['active_txt'] = 'Active';
$wb['server_id_txt'] = 'Server';
$wb['origin_txt'] = 'Zone';
$wb['ns_txt'] = 'NS';
$wb['mbox_txt'] = 'Email';
$wb['add_new_record_wizard_txt'] = 'Add new DNS Zone with Wizard';
$wb['add_new_record_txt'] = 'Add new DNS Zone manually';
$wb['sys_groupid_txt'] = 'Client';
?>
interface/web/dns/lib/lang/bg_dns_slave_admin_list.lng
@@ -1,10 +1,10 @@
<?php
$wb["list_head_txt"] = 'Secondary DNS-Zones';
$wb["active_txt"] = 'Active';
$wb["server_id_txt"] = 'Server';
$wb["origin_txt"] = 'Zone';
$wb["ns_txt"] = 'NS';
$wb["add_new_record_txt"] = 'Add new Secondary DNS-Zone';
$wb['list_head_txt'] = 'Secondary DNS-Zones';
$wb['active_txt'] = 'Active';
$wb['server_id_txt'] = 'Server';
$wb['origin_txt'] = 'Zone';
$wb['ns_txt'] = 'NS';
$wb['add_new_record_txt'] = 'Add new Secondary DNS-Zone';
$wb['eg_domain_tld'] = 'e.g. domain.tld.';
$wb["sys_groupid_txt"] = 'Client';
$wb['sys_groupid_txt'] = 'Client';
?>
interface/web/dns/lib/lang/bg_dns_soa_admin_list.lng
@@ -1,11 +1,11 @@
<?php
$wb["list_head_txt"] = 'DNS-Zones';
$wb["active_txt"] = 'Active';
$wb["server_id_txt"] = 'Server';
$wb["origin_txt"] = 'Zone';
$wb["ns_txt"] = 'NS';
$wb["mbox_txt"] = 'Email';
$wb["add_new_record_wizard_txt"] = 'Add new DNS Zone with Wizard';
$wb["add_new_record_txt"] = 'Add new DNS Zone manually';
$wb["sys_groupid_txt"] = 'Client';
$wb['list_head_txt'] = 'DNS-Zones';
$wb['active_txt'] = 'Active';
$wb['server_id_txt'] = 'Server';
$wb['origin_txt'] = 'Zone';
$wb['ns_txt'] = 'NS';
$wb['mbox_txt'] = 'Email';
$wb['add_new_record_wizard_txt'] = 'Add new DNS Zone with Wizard';
$wb['add_new_record_txt'] = 'Add new DNS Zone manually';
$wb['sys_groupid_txt'] = 'Client';
?>
interface/web/dns/lib/lang/br_dns_slave_admin_list.lng
@@ -1,10 +1,10 @@
<?php
$wb["list_head_txt"] = 'Secondary DNS-Zones';
$wb["active_txt"] = 'Active';
$wb["server_id_txt"] = 'Server';
$wb["origin_txt"] = 'Zone';
$wb["ns_txt"] = 'NS';
$wb["add_new_record_txt"] = 'Add new Secondary DNS-Zone';
$wb['list_head_txt'] = 'Secondary DNS-Zones';
$wb['active_txt'] = 'Active';
$wb['server_id_txt'] = 'Server';
$wb['origin_txt'] = 'Zone';
$wb['ns_txt'] = 'NS';
$wb['add_new_record_txt'] = 'Add new Secondary DNS-Zone';
$wb['eg_domain_tld'] = 'e.g. domain.tld.';
$wb["sys_groupid_txt"] = 'Client';
$wb['sys_groupid_txt'] = 'Client';
?>
interface/web/dns/lib/lang/br_dns_soa_admin_list.lng
@@ -1,11 +1,11 @@
<?php
$wb["list_head_txt"] = 'DNS-Zones';
$wb["active_txt"] = 'Active';
$wb["server_id_txt"] = 'Server';
$wb["origin_txt"] = 'Zone';
$wb["ns_txt"] = 'NS';
$wb["mbox_txt"] = 'Email';
$wb["add_new_record_wizard_txt"] = 'Add new DNS Zone with Wizard';
$wb["add_new_record_txt"] = 'Add new DNS Zone manually';
$wb["sys_groupid_txt"] = 'Client';
$wb['list_head_txt'] = 'DNS-Zones';
$wb['active_txt'] = 'Active';
$wb['server_id_txt'] = 'Server';
$wb['origin_txt'] = 'Zone';
$wb['ns_txt'] = 'NS';
$wb['mbox_txt'] = 'Email';
$wb['add_new_record_wizard_txt'] = 'Add new DNS Zone with Wizard';
$wb['add_new_record_txt'] = 'Add new DNS Zone manually';
$wb['sys_groupid_txt'] = 'Client';
?>
interface/web/dns/lib/lang/cz_dns_slave_admin_list.lng
@@ -1,10 +1,10 @@
<?php
$wb["list_head_txt"] = 'Secondary DNS-Zones';
$wb["active_txt"] = 'Active';
$wb["server_id_txt"] = 'Server';
$wb["origin_txt"] = 'Zone';
$wb["ns_txt"] = 'NS';
$wb["add_new_record_txt"] = 'Add new Secondary DNS-Zone';
$wb['eg_domain_tld'] = 'e.g. domain.tld.';
$wb["sys_groupid_txt"] = 'Client';
$wb['list_head_txt'] = 'Sekundární DNS-Zóny';
$wb['active_txt'] = 'Aktivní';
$wb['server_id_txt'] = 'Server';
$wb['origin_txt'] = 'Zóna';
$wb['ns_txt'] = 'NS';
$wb['add_new_record_txt'] = 'Přidat novou Sekundarní DNS-Zónu';
$wb['eg_domain_tld'] = 'např. domena.cz';
$wb['sys_groupid_txt'] = 'Klient';
?>
interface/web/dns/lib/lang/cz_dns_soa_admin_list.lng
@@ -1,11 +1,11 @@
<?php
$wb["list_head_txt"] = 'DNS-Zones';
$wb["active_txt"] = 'Active';
$wb["server_id_txt"] = 'Server';
$wb["origin_txt"] = 'Zone';
$wb["ns_txt"] = 'NS';
$wb["mbox_txt"] = 'Email';
$wb["add_new_record_wizard_txt"] = 'Add new DNS Zone with Wizard';
$wb["add_new_record_txt"] = 'Add new DNS Zone manually';
$wb["sys_groupid_txt"] = 'Client';
$wb['list_head_txt'] = 'DNS-Zóny';
$wb['active_txt'] = 'Aktivní';
$wb['server_id_txt'] = 'Server';
$wb['origin_txt'] = 'Zóna';
$wb['ns_txt'] = 'NS';
$wb['mbox_txt'] = 'E-mail';
$wb['add_new_record_wizard_txt'] = 'Přidat novou DNS zónu pomocí průvodce';
$wb['add_new_record_txt'] = 'Přidat novou DNS zónu manuálně';
$wb['sys_groupid_txt'] = 'Klient';
?>
interface/web/dns/lib/lang/el_dns_slave_admin_list.lng
@@ -1,10 +1,10 @@
<?php
$wb["list_head_txt"] = 'Secondary DNS-Zones';
$wb["active_txt"] = 'Active';
$wb["server_id_txt"] = 'Server';
$wb["origin_txt"] = 'Zone';
$wb["ns_txt"] = 'NS';
$wb["add_new_record_txt"] = 'Add new Secondary DNS-Zone';
$wb['list_head_txt'] = 'Secondary DNS-Zones';
$wb['active_txt'] = 'Active';
$wb['server_id_txt'] = 'Server';
$wb['origin_txt'] = 'Zone';
$wb['ns_txt'] = 'NS';
$wb['add_new_record_txt'] = 'Add new Secondary DNS-Zone';
$wb['eg_domain_tld'] = 'e.g. domain.tld.';
$wb["sys_groupid_txt"] = 'Client';
$wb['sys_groupid_txt'] = 'Client';
?>
interface/web/dns/lib/lang/el_dns_soa_admin_list.lng
@@ -1,11 +1,11 @@
<?php
$wb["list_head_txt"] = 'DNS-Zones';
$wb["active_txt"] = 'Active';
$wb["server_id_txt"] = 'Server';
$wb["origin_txt"] = 'Zone';
$wb["ns_txt"] = 'NS';
$wb["mbox_txt"] = 'Email';
$wb["add_new_record_wizard_txt"] = 'Add new DNS Zone with Wizard';
$wb["add_new_record_txt"] = 'Add new DNS Zone manually';
$wb["sys_groupid_txt"] = 'Client';
$wb['list_head_txt'] = 'DNS-Zones';
$wb['active_txt'] = 'Active';
$wb['server_id_txt'] = 'Server';
$wb['origin_txt'] = 'Zone';
$wb['ns_txt'] = 'NS';
$wb['mbox_txt'] = 'Email';
$wb['add_new_record_wizard_txt'] = 'Add new DNS Zone with Wizard';
$wb['add_new_record_txt'] = 'Add new DNS Zone manually';
$wb['sys_groupid_txt'] = 'Client';
?>
interface/web/dns/lib/lang/es_dns_slave_admin_list.lng
@@ -1,10 +1,10 @@
<?php
$wb["list_head_txt"] = 'Secondary DNS-Zones';
$wb["active_txt"] = 'Active';
$wb["server_id_txt"] = 'Server';
$wb["origin_txt"] = 'Zone';
$wb["ns_txt"] = 'NS';
$wb["add_new_record_txt"] = 'Add new Secondary DNS-Zone';
$wb['list_head_txt'] = 'Secondary DNS-Zones';
$wb['active_txt'] = 'Active';
$wb['server_id_txt'] = 'Server';
$wb['origin_txt'] = 'Zone';
$wb['ns_txt'] = 'NS';
$wb['add_new_record_txt'] = 'Add new Secondary DNS-Zone';
$wb['eg_domain_tld'] = 'e.g. domain.tld.';
$wb["sys_groupid_txt"] = 'Client';
$wb['sys_groupid_txt'] = 'Client';
?>
interface/web/dns/lib/lang/es_dns_soa_admin_list.lng
@@ -1,11 +1,11 @@
<?php
$wb["list_head_txt"] = 'DNS-Zones';
$wb["active_txt"] = 'Active';
$wb["server_id_txt"] = 'Server';
$wb["origin_txt"] = 'Zone';
$wb["ns_txt"] = 'NS';
$wb["mbox_txt"] = 'Email';
$wb["add_new_record_wizard_txt"] = 'Add new DNS Zone with Wizard';
$wb["add_new_record_txt"] = 'Add new DNS Zone manually';
$wb["sys_groupid_txt"] = 'Client';
$wb['list_head_txt'] = 'DNS-Zones';
$wb['active_txt'] = 'Active';
$wb['server_id_txt'] = 'Server';
$wb['origin_txt'] = 'Zone';
$wb['ns_txt'] = 'NS';
$wb['mbox_txt'] = 'Email';
$wb['add_new_record_wizard_txt'] = 'Add new DNS Zone with Wizard';
$wb['add_new_record_txt'] = 'Add new DNS Zone manually';
$wb['sys_groupid_txt'] = 'Client';
?>
interface/web/dns/lib/lang/fi_dns_slave_admin_list.lng
@@ -1,10 +1,10 @@
<?php
$wb["list_head_txt"] = 'Secondary DNS-Zones';
$wb["active_txt"] = 'Active';
$wb["server_id_txt"] = 'Server';
$wb["origin_txt"] = 'Zone';
$wb["ns_txt"] = 'NS';
$wb["add_new_record_txt"] = 'Add new Secondary DNS-Zone';
$wb['list_head_txt'] = 'Secondary DNS-Zones';
$wb['active_txt'] = 'Active';
$wb['server_id_txt'] = 'Server';
$wb['origin_txt'] = 'Zone';
$wb['ns_txt'] = 'NS';
$wb['add_new_record_txt'] = 'Add new Secondary DNS-Zone';
$wb['eg_domain_tld'] = 'e.g. domain.tld.';
$wb["sys_groupid_txt"] = 'Client';
$wb['sys_groupid_txt'] = 'Client';
?>
interface/web/dns/lib/lang/fi_dns_soa_admin_list.lng
@@ -1,11 +1,11 @@
<?php
$wb["list_head_txt"] = 'DNS-Zones';
$wb["active_txt"] = 'Active';
$wb["server_id_txt"] = 'Server';
$wb["origin_txt"] = 'Zone';
$wb["ns_txt"] = 'NS';
$wb["mbox_txt"] = 'Email';
$wb["add_new_record_wizard_txt"] = 'Add new DNS Zone with Wizard';
$wb["add_new_record_txt"] = 'Add new DNS Zone manually';
$wb["sys_groupid_txt"] = 'Client';
$wb['list_head_txt'] = 'DNS-Zones';
$wb['active_txt'] = 'Active';
$wb['server_id_txt'] = 'Server';
$wb['origin_txt'] = 'Zone';
$wb['ns_txt'] = 'NS';
$wb['mbox_txt'] = 'Email';
$wb['add_new_record_wizard_txt'] = 'Add new DNS Zone with Wizard';
$wb['add_new_record_txt'] = 'Add new DNS Zone manually';
$wb['sys_groupid_txt'] = 'Client';
?>
interface/web/dns/lib/lang/fr_dns_slave_admin_list.lng
@@ -1,10 +1,10 @@
<?php
$wb["list_head_txt"] = 'Secondary DNS-Zones';
$wb["active_txt"] = 'Active';
$wb["server_id_txt"] = 'Server';
$wb["origin_txt"] = 'Zone';
$wb["ns_txt"] = 'NS';
$wb["add_new_record_txt"] = 'Add new Secondary DNS-Zone';
$wb['list_head_txt'] = 'Secondary DNS-Zones';
$wb['active_txt'] = 'Active';
$wb['server_id_txt'] = 'Server';
$wb['origin_txt'] = 'Zone';
$wb['ns_txt'] = 'NS';
$wb['add_new_record_txt'] = 'Add new Secondary DNS-Zone';
$wb['eg_domain_tld'] = 'e.g. domain.tld.';
$wb["sys_groupid_txt"] = 'Client';
$wb['sys_groupid_txt'] = 'Client';
?>
interface/web/dns/lib/lang/fr_dns_soa_admin_list.lng
@@ -1,11 +1,11 @@
<?php
$wb["list_head_txt"] = 'DNS-Zones';
$wb["active_txt"] = 'Active';
$wb["server_id_txt"] = 'Server';
$wb["origin_txt"] = 'Zone';
$wb["ns_txt"] = 'NS';
$wb["mbox_txt"] = 'Email';
$wb["add_new_record_wizard_txt"] = 'Add new DNS Zone with Wizard';
$wb["add_new_record_txt"] = 'Add new DNS Zone manually';
$wb["sys_groupid_txt"] = 'Client';
$wb['list_head_txt'] = 'DNS-Zones';
$wb['active_txt'] = 'Active';
$wb['server_id_txt'] = 'Server';
$wb['origin_txt'] = 'Zone';
$wb['ns_txt'] = 'NS';
$wb['mbox_txt'] = 'Email';
$wb['add_new_record_wizard_txt'] = 'Add new DNS Zone with Wizard';
$wb['add_new_record_txt'] = 'Add new DNS Zone manually';
$wb['sys_groupid_txt'] = 'Client';
?>
interface/web/dns/lib/lang/hr_dns_slave_admin_list.lng
@@ -1,10 +1,10 @@
<?php
$wb["list_head_txt"] = 'Secondary DNS-Zones';
$wb["active_txt"] = 'Active';
$wb["server_id_txt"] = 'Server';
$wb["origin_txt"] = 'Zone';
$wb["ns_txt"] = 'NS';
$wb["add_new_record_txt"] = 'Add new Secondary DNS-Zone';
$wb['list_head_txt'] = 'Secondary DNS-Zones';
$wb['active_txt'] = 'Active';
$wb['server_id_txt'] = 'Server';
$wb['origin_txt'] = 'Zone';
$wb['ns_txt'] = 'NS';
$wb['add_new_record_txt'] = 'Add new Secondary DNS-Zone';
$wb['eg_domain_tld'] = 'e.g. domain.tld.';
$wb["sys_groupid_txt"] = 'Client';
$wb['sys_groupid_txt'] = 'Client';
?>
interface/web/dns/lib/lang/hr_dns_soa_admin_list.lng
@@ -1,11 +1,11 @@
<?php
$wb["list_head_txt"] = 'DNS-Zones';
$wb["active_txt"] = 'Active';
$wb["server_id_txt"] = 'Server';
$wb["origin_txt"] = 'Zone';
$wb["ns_txt"] = 'NS';
$wb["mbox_txt"] = 'Email';
$wb["add_new_record_wizard_txt"] = 'Add new DNS Zone with Wizard';
$wb["add_new_record_txt"] = 'Add new DNS Zone manually';
$wb["sys_groupid_txt"] = 'Client';
$wb['list_head_txt'] = 'DNS-Zones';
$wb['active_txt'] = 'Active';
$wb['server_id_txt'] = 'Server';
$wb['origin_txt'] = 'Zone';
$wb['ns_txt'] = 'NS';
$wb['mbox_txt'] = 'Email';
$wb['add_new_record_wizard_txt'] = 'Add new DNS Zone with Wizard';
$wb['add_new_record_txt'] = 'Add new DNS Zone manually';
$wb['sys_groupid_txt'] = 'Client';
?>
interface/web/dns/lib/lang/hu_dns_slave_admin_list.lng
@@ -1,10 +1,10 @@
<?php
$wb["list_head_txt"] = 'Secondary DNS-Zones';
$wb["active_txt"] = 'Active';
$wb["server_id_txt"] = 'Server';
$wb["origin_txt"] = 'Zone';
$wb["ns_txt"] = 'NS';
$wb["add_new_record_txt"] = 'Add new Secondary DNS-Zone';
$wb['list_head_txt'] = 'Secondary DNS-Zones';
$wb['active_txt'] = 'Active';
$wb['server_id_txt'] = 'Server';
$wb['origin_txt'] = 'Zone';
$wb['ns_txt'] = 'NS';
$wb['add_new_record_txt'] = 'Add new Secondary DNS-Zone';
$wb['eg_domain_tld'] = 'e.g. domain.tld.';
$wb["sys_groupid_txt"] = 'Client';
$wb['sys_groupid_txt'] = 'Client';
?>
interface/web/dns/lib/lang/hu_dns_soa_admin_list.lng
@@ -1,11 +1,11 @@
<?php
$wb["list_head_txt"] = 'DNS-Zones';
$wb["active_txt"] = 'Active';
$wb["server_id_txt"] = 'Server';
$wb["origin_txt"] = 'Zone';
$wb["ns_txt"] = 'NS';
$wb["mbox_txt"] = 'Email';
$wb["add_new_record_wizard_txt"] = 'Add new DNS Zone with Wizard';
$wb["add_new_record_txt"] = 'Add new DNS Zone manually';
$wb["sys_groupid_txt"] = 'Client';
$wb['list_head_txt'] = 'DNS-Zones';
$wb['active_txt'] = 'Active';
$wb['server_id_txt'] = 'Server';
$wb['origin_txt'] = 'Zone';
$wb['ns_txt'] = 'NS';
$wb['mbox_txt'] = 'Email';
$wb['add_new_record_wizard_txt'] = 'Add new DNS Zone with Wizard';
$wb['add_new_record_txt'] = 'Add new DNS Zone manually';
$wb['sys_groupid_txt'] = 'Client';
?>
interface/web/dns/lib/lang/id_dns_slave_admin_list.lng
@@ -1,10 +1,10 @@
<?php
$wb["list_head_txt"] = 'Secondary DNS-Zones';
$wb["active_txt"] = 'Active';
$wb["server_id_txt"] = 'Server';
$wb["origin_txt"] = 'Zone';
$wb["ns_txt"] = 'NS';
$wb["add_new_record_txt"] = 'Add new Secondary DNS-Zone';
$wb['list_head_txt'] = 'Secondary DNS-Zones';
$wb['active_txt'] = 'Active';
$wb['server_id_txt'] = 'Server';
$wb['origin_txt'] = 'Zone';
$wb['ns_txt'] = 'NS';
$wb['add_new_record_txt'] = 'Add new Secondary DNS-Zone';
$wb['eg_domain_tld'] = 'e.g. domain.tld.';
$wb["sys_groupid_txt"] = 'Client';
$wb['sys_groupid_txt'] = 'Client';
?>
interface/web/dns/lib/lang/id_dns_soa_admin_list.lng
@@ -1,11 +1,11 @@
<?php
$wb["list_head_txt"] = 'DNS-Zones';
$wb["active_txt"] = 'Active';
$wb["server_id_txt"] = 'Server';
$wb["origin_txt"] = 'Zone';
$wb["ns_txt"] = 'NS';
$wb["mbox_txt"] = 'Email';
$wb["add_new_record_wizard_txt"] = 'Add new DNS Zone with Wizard';
$wb["add_new_record_txt"] = 'Add new DNS Zone manually';
$wb["sys_groupid_txt"] = 'Client';
$wb['list_head_txt'] = 'DNS-Zones';
$wb['active_txt'] = 'Active';
$wb['server_id_txt'] = 'Server';
$wb['origin_txt'] = 'Zone';
$wb['ns_txt'] = 'NS';
$wb['mbox_txt'] = 'Email';
$wb['add_new_record_wizard_txt'] = 'Add new DNS Zone with Wizard';
$wb['add_new_record_txt'] = 'Add new DNS Zone manually';
$wb['sys_groupid_txt'] = 'Client';
?>
interface/web/dns/lib/lang/it_dns_slave_admin_list.lng
@@ -1,10 +1,10 @@
<?php
$wb["list_head_txt"] = 'Secondary DNS-Zones';
$wb["active_txt"] = 'Active';
$wb["server_id_txt"] = 'Server';
$wb["origin_txt"] = 'Zone';
$wb["ns_txt"] = 'NS';
$wb["add_new_record_txt"] = 'Add new Secondary DNS-Zone';
$wb['list_head_txt'] = 'Secondary DNS-Zones';
$wb['active_txt'] = 'Active';
$wb['server_id_txt'] = 'Server';
$wb['origin_txt'] = 'Zone';
$wb['ns_txt'] = 'NS';
$wb['add_new_record_txt'] = 'Add new Secondary DNS-Zone';
$wb['eg_domain_tld'] = 'e.g. domain.tld.';
$wb["sys_groupid_txt"] = 'Client';
$wb['sys_groupid_txt'] = 'Client';
?>
interface/web/dns/lib/lang/it_dns_soa_admin_list.lng
@@ -1,11 +1,11 @@
<?php
$wb["list_head_txt"] = 'DNS-Zones';
$wb["active_txt"] = 'Active';
$wb["server_id_txt"] = 'Server';
$wb["origin_txt"] = 'Zone';
$wb["ns_txt"] = 'NS';
$wb["mbox_txt"] = 'Email';
$wb["add_new_record_wizard_txt"] = 'Add new DNS Zone with Wizard';
$wb["add_new_record_txt"] = 'Add new DNS Zone manually';
$wb["sys_groupid_txt"] = 'Client';
$wb['list_head_txt'] = 'DNS-Zones';
$wb['active_txt'] = 'Active';
$wb['server_id_txt'] = 'Server';
$wb['origin_txt'] = 'Zone';
$wb['ns_txt'] = 'NS';
$wb['mbox_txt'] = 'Email';
$wb['add_new_record_wizard_txt'] = 'Add new DNS Zone with Wizard';
$wb['add_new_record_txt'] = 'Add new DNS Zone manually';
$wb['sys_groupid_txt'] = 'Client';
?>
interface/web/dns/lib/lang/ja_dns_slave_admin_list.lng
@@ -1,10 +1,10 @@
<?php
$wb["list_head_txt"] = 'Secondary DNS-Zones';
$wb["active_txt"] = 'Active';
$wb["server_id_txt"] = 'Server';
$wb["origin_txt"] = 'Zone';
$wb["ns_txt"] = 'NS';
$wb["add_new_record_txt"] = 'Add new Secondary DNS-Zone';
$wb['list_head_txt'] = 'Secondary DNS-Zones';
$wb['active_txt'] = 'Active';
$wb['server_id_txt'] = 'Server';
$wb['origin_txt'] = 'Zone';
$wb['ns_txt'] = 'NS';
$wb['add_new_record_txt'] = 'Add new Secondary DNS-Zone';
$wb['eg_domain_tld'] = 'e.g. domain.tld.';
$wb["sys_groupid_txt"] = 'Client';
$wb['sys_groupid_txt'] = 'Client';
?>
interface/web/dns/lib/lang/ja_dns_soa_admin_list.lng
@@ -1,11 +1,11 @@
<?php
$wb["list_head_txt"] = 'DNS-Zones';
$wb["active_txt"] = 'Active';
$wb["server_id_txt"] = 'Server';
$wb["origin_txt"] = 'Zone';
$wb["ns_txt"] = 'NS';
$wb["mbox_txt"] = 'Email';
$wb["add_new_record_wizard_txt"] = 'Add new DNS Zone with Wizard';
$wb["add_new_record_txt"] = 'Add new DNS Zone manually';
$wb["sys_groupid_txt"] = 'Client';
$wb['list_head_txt'] = 'DNS-Zones';
$wb['active_txt'] = 'Active';
$wb['server_id_txt'] = 'Server';
$wb['origin_txt'] = 'Zone';
$wb['ns_txt'] = 'NS';
$wb['mbox_txt'] = 'Email';
$wb['add_new_record_wizard_txt'] = 'Add new DNS Zone with Wizard';
$wb['add_new_record_txt'] = 'Add new DNS Zone manually';
$wb['sys_groupid_txt'] = 'Client';
?>
interface/web/dns/lib/lang/nl_dns_slave_admin_list.lng
@@ -1,10 +1,10 @@
<?php
$wb["list_head_txt"] = 'Secondary DNS-Zones';
$wb["active_txt"] = 'Active';
$wb["server_id_txt"] = 'Server';
$wb["origin_txt"] = 'Zone';
$wb["ns_txt"] = 'NS';
$wb["add_new_record_txt"] = 'Add new Secondary DNS-Zone';
$wb['list_head_txt'] = 'Secondary DNS-Zones';
$wb['active_txt'] = 'Active';
$wb['server_id_txt'] = 'Server';
$wb['origin_txt'] = 'Zone';
$wb['ns_txt'] = 'NS';
$wb['add_new_record_txt'] = 'Add new Secondary DNS-Zone';
$wb['eg_domain_tld'] = 'e.g. domain.tld.';
$wb["sys_groupid_txt"] = 'Client';
$wb['sys_groupid_txt'] = 'Client';
?>
interface/web/dns/lib/lang/nl_dns_soa_admin_list.lng
@@ -1,11 +1,11 @@
<?php
$wb["list_head_txt"] = 'DNS-Zones';
$wb["active_txt"] = 'Active';
$wb["server_id_txt"] = 'Server';
$wb["origin_txt"] = 'Zone';
$wb["ns_txt"] = 'NS';
$wb["mbox_txt"] = 'Email';
$wb["add_new_record_wizard_txt"] = 'Add new DNS Zone with Wizard';
$wb["add_new_record_txt"] = 'Add new DNS Zone manually';
$wb["sys_groupid_txt"] = 'Client';
$wb['list_head_txt'] = 'DNS-Zones';
$wb['active_txt'] = 'Active';
$wb['server_id_txt'] = 'Server';
$wb['origin_txt'] = 'Zone';
$wb['ns_txt'] = 'NS';
$wb['mbox_txt'] = 'Email';
$wb['add_new_record_wizard_txt'] = 'Add new DNS Zone with Wizard';
$wb['add_new_record_txt'] = 'Add new DNS Zone manually';
$wb['sys_groupid_txt'] = 'Client';
?>
interface/web/dns/lib/lang/pl_dns_slave_admin_list.lng
@@ -1,10 +1,10 @@
<?php
$wb["list_head_txt"] = 'Secondary DNS-Zones';
$wb["active_txt"] = 'Active';
$wb["server_id_txt"] = 'Server';
$wb["origin_txt"] = 'Zone';
$wb["ns_txt"] = 'NS';
$wb["add_new_record_txt"] = 'Add new Secondary DNS-Zone';
$wb['list_head_txt'] = 'Secondary DNS-Zones';
$wb['active_txt'] = 'Active';
$wb['server_id_txt'] = 'Server';
$wb['origin_txt'] = 'Zone';
$wb['ns_txt'] = 'NS';
$wb['add_new_record_txt'] = 'Add new Secondary DNS-Zone';
$wb['eg_domain_tld'] = 'e.g. domain.tld.';
$wb["sys_groupid_txt"] = 'Client';
$wb['sys_groupid_txt'] = 'Client';
?>
interface/web/dns/lib/lang/pl_dns_soa_admin_list.lng
@@ -1,11 +1,11 @@
<?php
$wb["list_head_txt"] = 'DNS-Zones';
$wb["active_txt"] = 'Active';
$wb["server_id_txt"] = 'Server';
$wb["origin_txt"] = 'Zone';
$wb["ns_txt"] = 'NS';
$wb["mbox_txt"] = 'Email';
$wb["add_new_record_wizard_txt"] = 'Add new DNS Zone with Wizard';
$wb["add_new_record_txt"] = 'Add new DNS Zone manually';
$wb["sys_groupid_txt"] = 'Client';
$wb['list_head_txt'] = 'DNS-Zones';
$wb['active_txt'] = 'Active';
$wb['server_id_txt'] = 'Server';
$wb['origin_txt'] = 'Zone';
$wb['ns_txt'] = 'NS';
$wb['mbox_txt'] = 'Email';
$wb['add_new_record_wizard_txt'] = 'Add new DNS Zone with Wizard';
$wb['add_new_record_txt'] = 'Add new DNS Zone manually';
$wb['sys_groupid_txt'] = 'Client';
?>
interface/web/dns/lib/lang/pt_dns_slave_admin_list.lng
@@ -1,10 +1,10 @@
<?php
$wb["list_head_txt"] = 'Secondary DNS-Zones';
$wb["active_txt"] = 'Active';
$wb["server_id_txt"] = 'Server';
$wb["origin_txt"] = 'Zone';
$wb["ns_txt"] = 'NS';
$wb["add_new_record_txt"] = 'Add new Secondary DNS-Zone';
$wb['list_head_txt'] = 'Secondary DNS-Zones';
$wb['active_txt'] = 'Active';
$wb['server_id_txt'] = 'Server';
$wb['origin_txt'] = 'Zone';
$wb['ns_txt'] = 'NS';
$wb['add_new_record_txt'] = 'Add new Secondary DNS-Zone';
$wb['eg_domain_tld'] = 'e.g. domain.tld.';
$wb["sys_groupid_txt"] = 'Client';
$wb['sys_groupid_txt'] = 'Client';
?>
interface/web/dns/lib/lang/pt_dns_soa_admin_list.lng
@@ -1,11 +1,11 @@
<?php
$wb["list_head_txt"] = 'DNS-Zones';
$wb["active_txt"] = 'Active';
$wb["server_id_txt"] = 'Server';
$wb["origin_txt"] = 'Zone';
$wb["ns_txt"] = 'NS';
$wb["mbox_txt"] = 'Email';
$wb["add_new_record_wizard_txt"] = 'Add new DNS Zone with Wizard';
$wb["add_new_record_txt"] = 'Add new DNS Zone manually';
$wb["sys_groupid_txt"] = 'Client';
$wb['list_head_txt'] = 'DNS-Zones';
$wb['active_txt'] = 'Active';
$wb['server_id_txt'] = 'Server';
$wb['origin_txt'] = 'Zone';
$wb['ns_txt'] = 'NS';
$wb['mbox_txt'] = 'Email';
$wb['add_new_record_wizard_txt'] = 'Add new DNS Zone with Wizard';
$wb['add_new_record_txt'] = 'Add new DNS Zone manually';
$wb['sys_groupid_txt'] = 'Client';
?>
interface/web/dns/lib/lang/ro_dns_slave_admin_list.lng
@@ -1,10 +1,10 @@
<?php
$wb["list_head_txt"] = 'Secondary DNS-Zones';
$wb["active_txt"] = 'Active';
$wb["server_id_txt"] = 'Server';
$wb["origin_txt"] = 'Zone';
$wb["ns_txt"] = 'NS';
$wb["add_new_record_txt"] = 'Add new Secondary DNS-Zone';
$wb['list_head_txt'] = 'Secondary DNS-Zones';
$wb['active_txt'] = 'Active';
$wb['server_id_txt'] = 'Server';
$wb['origin_txt'] = 'Zone';
$wb['ns_txt'] = 'NS';
$wb['add_new_record_txt'] = 'Add new Secondary DNS-Zone';
$wb['eg_domain_tld'] = 'e.g. domain.tld.';
$wb["sys_groupid_txt"] = 'Client';
$wb['sys_groupid_txt'] = 'Client';
?>
interface/web/dns/lib/lang/ro_dns_soa_admin_list.lng
@@ -1,11 +1,11 @@
<?php
$wb["list_head_txt"] = 'DNS-Zones';
$wb["active_txt"] = 'Active';
$wb["server_id_txt"] = 'Server';
$wb["origin_txt"] = 'Zone';
$wb["ns_txt"] = 'NS';
$wb["mbox_txt"] = 'Email';
$wb["add_new_record_wizard_txt"] = 'Add new DNS Zone with Wizard';
$wb["add_new_record_txt"] = 'Add new DNS Zone manually';
$wb["sys_groupid_txt"] = 'Client';
$wb['list_head_txt'] = 'DNS-Zones';
$wb['active_txt'] = 'Active';
$wb['server_id_txt'] = 'Server';
$wb['origin_txt'] = 'Zone';
$wb['ns_txt'] = 'NS';
$wb['mbox_txt'] = 'Email';
$wb['add_new_record_wizard_txt'] = 'Add new DNS Zone with Wizard';
$wb['add_new_record_txt'] = 'Add new DNS Zone manually';
$wb['sys_groupid_txt'] = 'Client';
?>
interface/web/dns/lib/lang/ru_dns_slave_admin_list.lng
@@ -1,10 +1,10 @@
<?php
$wb["list_head_txt"] = 'Secondary DNS-Zones';
$wb["active_txt"] = 'Active';
$wb["server_id_txt"] = 'Server';
$wb["origin_txt"] = 'Zone';
$wb["ns_txt"] = 'NS';
$wb["add_new_record_txt"] = 'Add new Secondary DNS-Zone';
$wb['list_head_txt'] = 'Secondary DNS-Zones';
$wb['active_txt'] = 'Active';
$wb['server_id_txt'] = 'Server';
$wb['origin_txt'] = 'Zone';
$wb['ns_txt'] = 'NS';
$wb['add_new_record_txt'] = 'Add new Secondary DNS-Zone';
$wb['eg_domain_tld'] = 'e.g. domain.tld.';
$wb["sys_groupid_txt"] = 'Client';
$wb['sys_groupid_txt'] = 'Client';
?>
interface/web/dns/lib/lang/ru_dns_soa_admin_list.lng
@@ -1,11 +1,11 @@
<?php
$wb["list_head_txt"] = 'DNS-Zones';
$wb["active_txt"] = 'Active';
$wb["server_id_txt"] = 'Server';
$wb["origin_txt"] = 'Zone';
$wb["ns_txt"] = 'NS';
$wb["mbox_txt"] = 'Email';
$wb["add_new_record_wizard_txt"] = 'Add new DNS Zone with Wizard';
$wb["add_new_record_txt"] = 'Add new DNS Zone manually';
$wb["sys_groupid_txt"] = 'Client';
$wb['list_head_txt'] = 'DNS-Zones';
$wb['active_txt'] = 'Active';
$wb['server_id_txt'] = 'Server';
$wb['origin_txt'] = 'Zone';
$wb['ns_txt'] = 'NS';
$wb['mbox_txt'] = 'Email';
$wb['add_new_record_wizard_txt'] = 'Add new DNS Zone with Wizard';
$wb['add_new_record_txt'] = 'Add new DNS Zone manually';
$wb['sys_groupid_txt'] = 'Client';
?>
interface/web/dns/lib/lang/se_dns_slave_admin_list.lng
@@ -1,10 +1,10 @@
<?php
$wb["list_head_txt"] = 'Secondary DNS-Zones';
$wb["active_txt"] = 'Active';
$wb["server_id_txt"] = 'Server';
$wb["origin_txt"] = 'Zone';
$wb["ns_txt"] = 'NS';
$wb["add_new_record_txt"] = 'Add new Secondary DNS-Zone';
$wb['list_head_txt'] = 'Secondary DNS-Zones';
$wb['active_txt'] = 'Active';
$wb['server_id_txt'] = 'Server';
$wb['origin_txt'] = 'Zone';
$wb['ns_txt'] = 'NS';
$wb['add_new_record_txt'] = 'Add new Secondary DNS-Zone';
$wb['eg_domain_tld'] = 'e.g. domain.tld.';
$wb["sys_groupid_txt"] = 'Client';
$wb['sys_groupid_txt'] = 'Client';
?>
interface/web/dns/lib/lang/se_dns_soa_admin_list.lng
@@ -1,11 +1,11 @@
<?php
$wb["list_head_txt"] = 'DNS-Zones';
$wb["active_txt"] = 'Active';
$wb["server_id_txt"] = 'Server';
$wb["origin_txt"] = 'Zone';
$wb["ns_txt"] = 'NS';
$wb["mbox_txt"] = 'Email';
$wb["add_new_record_wizard_txt"] = 'Add new DNS Zone with Wizard';
$wb["add_new_record_txt"] = 'Add new DNS Zone manually';
$wb["sys_groupid_txt"] = 'Client';
$wb['list_head_txt'] = 'DNS-Zones';
$wb['active_txt'] = 'Active';
$wb['server_id_txt'] = 'Server';
$wb['origin_txt'] = 'Zone';
$wb['ns_txt'] = 'NS';
$wb['mbox_txt'] = 'Email';
$wb['add_new_record_wizard_txt'] = 'Add new DNS Zone with Wizard';
$wb['add_new_record_txt'] = 'Add new DNS Zone manually';
$wb['sys_groupid_txt'] = 'Client';
?>
interface/web/dns/lib/lang/sk_dns_slave_admin_list.lng
@@ -1,10 +1,10 @@
<?php
$wb["list_head_txt"] = 'Secondary DNS-Zones';
$wb["active_txt"] = 'Active';
$wb["server_id_txt"] = 'Server';
$wb["origin_txt"] = 'Zone';
$wb["ns_txt"] = 'NS';
$wb["add_new_record_txt"] = 'Add new Secondary DNS-Zone';
$wb['list_head_txt'] = 'Secondary DNS-Zones';
$wb['active_txt'] = 'Active';
$wb['server_id_txt'] = 'Server';
$wb['origin_txt'] = 'Zone';
$wb['ns_txt'] = 'NS';
$wb['add_new_record_txt'] = 'Add new Secondary DNS-Zone';
$wb['eg_domain_tld'] = 'e.g. domain.tld.';
$wb["sys_groupid_txt"] = 'Client';
$wb['sys_groupid_txt'] = 'Client';
?>
interface/web/dns/lib/lang/sk_dns_soa_admin_list.lng
@@ -1,11 +1,11 @@
<?php
$wb["list_head_txt"] = 'DNS-Zones';
$wb["active_txt"] = 'Active';
$wb["server_id_txt"] = 'Server';
$wb["origin_txt"] = 'Zone';
$wb["ns_txt"] = 'NS';
$wb["mbox_txt"] = 'Email';
$wb["add_new_record_wizard_txt"] = 'Add new DNS Zone with Wizard';
$wb["add_new_record_txt"] = 'Add new DNS Zone manually';
$wb["sys_groupid_txt"] = 'Client';
$wb['list_head_txt'] = 'DNS-Zones';
$wb['active_txt'] = 'Active';
$wb['server_id_txt'] = 'Server';
$wb['origin_txt'] = 'Zone';
$wb['ns_txt'] = 'NS';
$wb['mbox_txt'] = 'Email';
$wb['add_new_record_wizard_txt'] = 'Add new DNS Zone with Wizard';
$wb['add_new_record_txt'] = 'Add new DNS Zone manually';
$wb['sys_groupid_txt'] = 'Client';
?>
interface/web/dns/lib/lang/tr_dns_slave_admin_list.lng
@@ -1,10 +1,10 @@
<?php
$wb["list_head_txt"] = 'Secondary DNS-Zones';
$wb["active_txt"] = 'Active';
$wb["server_id_txt"] = 'Server';
$wb["origin_txt"] = 'Zone';
$wb["ns_txt"] = 'NS';
$wb["add_new_record_txt"] = 'Add new Secondary DNS-Zone';
$wb['list_head_txt'] = 'Secondary DNS-Zones';
$wb['active_txt'] = 'Active';
$wb['server_id_txt'] = 'Server';
$wb['origin_txt'] = 'Zone';
$wb['ns_txt'] = 'NS';
$wb['add_new_record_txt'] = 'Add new Secondary DNS-Zone';
$wb['eg_domain_tld'] = 'e.g. domain.tld.';
$wb["sys_groupid_txt"] = 'Client';
$wb['sys_groupid_txt'] = 'Client';
?>
interface/web/dns/lib/lang/tr_dns_soa_admin_list.lng
@@ -1,11 +1,11 @@
<?php
$wb["list_head_txt"] = 'DNS-Zones';
$wb["active_txt"] = 'Active';
$wb["server_id_txt"] = 'Server';
$wb["origin_txt"] = 'Zone';
$wb["ns_txt"] = 'NS';
$wb["mbox_txt"] = 'Email';
$wb["add_new_record_wizard_txt"] = 'Add new DNS Zone with Wizard';
$wb["add_new_record_txt"] = 'Add new DNS Zone manually';
$wb["sys_groupid_txt"] = 'Client';
$wb['list_head_txt'] = 'DNS-Zones';
$wb['active_txt'] = 'Active';
$wb['server_id_txt'] = 'Server';
$wb['origin_txt'] = 'Zone';
$wb['ns_txt'] = 'NS';
$wb['mbox_txt'] = 'Email';
$wb['add_new_record_wizard_txt'] = 'Add new DNS Zone with Wizard';
$wb['add_new_record_txt'] = 'Add new DNS Zone manually';
$wb['sys_groupid_txt'] = 'Client';
?>
interface/web/js/scrigo.js.php
@@ -1,5 +1,4 @@
<?php
session_start();
include '../../lib/config.inc.php';
header('Content-Type: text/javascript; charset=utf-8'); // the config file sets the content type header so we have to override it here!
require_once '../../lib/app.inc.php';
@@ -438,6 +437,8 @@
}
function changeTab(tab,target,force) {
    if(requestsRunning > 0) return false;
    //document.forms[0].next_tab.value = tab;
    document.pageForm.next_tab.value = tab;
interface/web/login/index.php
@@ -200,6 +200,13 @@
                                    if(crypt(stripslashes($passwort), $salt) != $saved_password) {
                                        $user = false;
                                    }
                                } elseif(substr($saved_password, 0, 3) == '$5$') {
                                    //* The password is crypt-sha256 encrypted
                                    $salt = '$5$'.substr($saved_password, 3, 16).'$';
                                    if(crypt(stripslashes($passwort), $salt) != $saved_password) {
                                        $user = false;
                                    }
                                } else {
                                    //* The password is md5 encrypted
interface/web/login/lib/lang/se_login_as.lng
@@ -1,11 +1,11 @@
<?php
$wb['login_1_txt'] = 'Vill du loggga in som användare';
$wb['login_2_txt'] = 'If you do so, you can \"go back\" by clicking at logout.';
$wb['login_2_txt'] = 'If you do so, you can \\"go back\\" by clicking at logout.';
$wb['btn_yes_txt'] = 'Ja, logga in som kund';
$wb['btn_back_txt'] = 'Nej, tillbaka till listan';
$wb['udp_port_help_txt'] = 'Avdelade med kommatecken';
$wb['active_txt'] = 'Aktiv';
$wb['firewall_error_unique'] = 'There is already a firewall record for this server.';
$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['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 \\",\\".';
?>
interface/web/mail/lib/lang/cz.lng
@@ -1,6 +1,6 @@
<?php
$wb['Email Alias'] = 'E-mailové aliasy';
$wb['Email Blacklist'] = 'Email černá listina';
$wb['Email Blacklist'] = 'E-mailová černá listina';
$wb['Blacklist'] = 'Černá listina';
$wb['Mail Content Filter'] = 'Obsahový filtr';
$wb['Filter'] = 'Filtr';
@@ -17,7 +17,7 @@
$wb['Mail Filter'] = 'E-mailové filtry';
$wb['Custom Rules'] = 'Vlastní pravidla';
$wb['Email filter'] = 'E-mailový filtr';
$wb['Email Whitelist'] = 'E-mail bílá listina';
$wb['Email Whitelist'] = 'E-mailová bílá listina';
$wb['Whitelist'] = 'Bílá listina';
$wb['Spamfilter blacklist'] = 'Spamový filtr černá listina';
$wb['Spamfilter Config'] = 'Konfigurace spamfiltru';
interface/web/mail/lib/lang/cz_mail_user.lng
@@ -49,5 +49,5 @@
$wb['password_match_txt'] = 'Hesla se shodují.';
$wb['email_error_isascii'] = 'Please do not use special unicode characters for your password. This could lead to problems with your mail client.';
$wb['cc_note_txt'] = '(Při přeposílání na více e-mailových adres, oddělte čárkami.)';
$wb['disablesmtp_txt'] = 'Disable SMTP (sending)';
$wb['disablesmtp_txt'] = 'Zakázat SMTP (pouze odesílání)';
?>
interface/web/mail/lib/lang/cz_mail_whitelist_list.lng
@@ -1,5 +1,5 @@
<?php
$wb['list_head_txt'] = 'Email bílá listina';
$wb['list_head_txt'] = 'E-mailová bílá listina';
$wb['active_txt'] = 'Aktivní';
$wb['server_id_txt'] = 'Server';
$wb['source_txt'] = 'Adresy na bílé listině';
interface/web/mail/lib/lang/cz_spamfilter_whitelist_list.lng
@@ -4,6 +4,6 @@
$wb['server_id_txt'] = 'Server';
$wb['priority_txt'] = 'Priorita';
$wb['rid_txt'] = 'Uživatel';
$wb['email_txt'] = 'Emaily na bílé listině';
$wb['email_txt'] = 'E-maily na bílé listině';
$wb['add_new_record_txt'] = 'Přidat záznam na bílou listinu';
?>
interface/web/mail/lib/lang/se_mail_get.lng
@@ -14,6 +14,6 @@
$wb['destination_error_isemail'] = 'Ingen destination vald.';
$wb['source_server_error_regex'] = 'POP3-/Imapserver är inte ett giltigt domännamn.';
$wb['source_read_all_txt'] = 'Hämta all epost (även läst epost)';
$wb['error_delete_read_all_combination'] = 'Illegal combination of options. You can not use \"Delete emails after retrieval\" = no together with \"Retrieve all emails\" = yes';
$wb['error_delete_read_all_combination'] = 'Illegal combination of options. You can not use \\"Delete emails after retrieval\\" = no together with \\"Retrieve all emails\\" = yes';
$wb['source_delete_note_txt'] = 'Vänligen kontrollera först om eposthämtning fungerar innan du aktiverar detta val..';
?>
interface/web/remote/index.php
@@ -6,7 +6,11 @@
if($conf['demo_mode'] == true) $app->error('This function is disabled in demo mode.');
$app->load('remoting');
$app->load('remoting,getconf');
$security_config = $app->getconf->get_security_config('permissions');
if($security_config['remote_api_allowed'] != 'yes') die('Remote API is disabled in security settings.');
$server = new SoapServer(null, array('uri' => $_SERVER['REQUEST_URI']));
$server->setClass('remoting');
interface/web/sites/form/ftp_user.tform.php
@@ -205,6 +205,10 @@
                                            1 => array (     'type' => 'REGEX',
                                                            'regex' => '/^\/[a-zA-Z0-9\ \.\-\_\/]{10,128}$/',
                                                            'errmsg'=> 'directory_error_regex'),
                                            2 => array (    'type'  => 'CUSTOM',
                                                        'class' => 'validate_ftpuser',
                                                        'function' => 'ftp_dir',
                                                        'errmsg' => 'directory_error_notinweb'),
                ),
                'default'   => '',
                'value'     => '',
interface/web/sites/form/shell_user.tform.php
@@ -93,6 +93,13 @@
                1 => array ( 'type' => 'REGEX',
                    'regex' => '/^[\w\.\-]{0,32}$/',
                    'errmsg'=> 'username_error_regex'),
                2 => array(
                            'type' => 'CUSTOM',
                            'class' => 'validate_systemuser',
                            'function' => 'check_sysuser',
                            'check_names' => false,
                            'errmsg' => 'invalid_username_txt'
                        ),
            ),
            'default' => '',
            'value'  => '',
@@ -230,6 +237,10 @@
                                        1 => array (     'type' => 'REGEX',
                                                            'regex' => '/^\/[a-zA-Z0-9\ \.\-\_\/]{10,128}$/',
                                                            'errmsg'=> 'directory_error_regex'),
                                        2 => array (    'type'  => 'CUSTOM',
                                                        'class' => 'validate_systemuser',
                                                        'function' => 'shelluser_dir',
                                                        'errmsg' => 'directory_error_notinweb'),
                ),
                'default' => '',
                'value'  => '',
interface/web/sites/form/web_domain.tform.php
@@ -496,7 +496,7 @@
            'datatype' => 'VARCHAR',
            'formtype' => 'SELECT',
            'default' => 'webalizer',
            'value'  => array('webalizer' => 'Webalizer', 'awstats' => 'AWStats')
            'value'  => array('webalizer' => 'Webalizer', 'awstats' => 'AWStats', '' => 'None')
        ),
        //#################################
        // ENDE Datatable fields
@@ -582,6 +582,13 @@
                'formtype' => 'TEXT',
                'validators' => array (  0 => array ( 'type' => 'NOTEMPTY',
                        'errmsg'=> 'sysuser_error_empty'),
                        1 => array(
                            'type' => 'CUSTOM',
                            'class' => 'validate_systemuser',
                            'function' => 'check_sysuser',
                            'check_names' => true,
                            'errmsg' => 'invalid_system_user_or_group_txt'
                        ),
                ),
                'default' => '',
                'value'  => '',
@@ -593,6 +600,13 @@
                'formtype' => 'TEXT',
                'validators' => array (  0 => array ( 'type' => 'NOTEMPTY',
                        'errmsg'=> 'sysgroup_error_empty'),
                        1 => array(
                            'type' => 'CUSTOM',
                            'class' => 'validate_systemuser',
                            'function' => 'check_sysgroup',
                            'check_names' => true,
                            'errmsg' => 'invalid_system_user_or_group_txt'
                        ),
                ),
                'default' => '',
                'value'  => '',
interface/web/sites/form/web_vhost_subdomain.tform.php
@@ -486,7 +486,7 @@
            'datatype' => 'VARCHAR',
            'formtype' => 'SELECT',
            'default' => 'webalizer',
            'value'  => array('webalizer' => 'Webalizer', 'awstats' => 'AWStats')
            'value'  => array('webalizer' => 'Webalizer', 'awstats' => 'AWStats', '' => 'None')
        ),
        //#################################
        // ENDE Datatable fields
interface/web/sites/lib/lang/ar_shell_user.lng
@@ -31,4 +31,6 @@
$wb['invalid_system_user_or_group_txt'] = 'Invalid system user or group';
$wb['directory_error_regex'] = 'Invalid directory';
$wb['shell_error_regex'] = 'Invalid shell';
$wb['invalid_username_txt'] = 'Invalid Username';
$wb['directory_error_notinweb'] = 'The directory has to be inside the web root.';
?>
interface/web/sites/lib/lang/ar_web_domain.lng
@@ -127,4 +127,5 @@
$wb['backup_excludes_note_txt'] = '(Separate multiple directories with commas. Example: web/cache/*,web/backup)';
$wb['backup_excludes_error_regex'] = 'The excluded directories contain invalid characters.';
$wb['invalid_custom_php_ini_settings_txt'] = 'Invalid php.ini settings';
$wb['invalid_system_user_or_group_txt'] = 'Invalid system user or group';
?>
interface/web/sites/lib/lang/bg_shell_user.lng
@@ -31,4 +31,6 @@
$wb['invalid_system_user_or_group_txt'] = 'Invalid system user or group';
$wb['directory_error_regex'] = 'Invalid directory';
$wb['shell_error_regex'] = 'Invalid shell';
$wb['invalid_username_txt'] = 'Invalid Username';
$wb['directory_error_notinweb'] = 'The directory has to be inside the web root.';
?>
interface/web/sites/lib/lang/bg_web_domain.lng
@@ -127,4 +127,5 @@
$wb['backup_excludes_note_txt'] = '(Separate multiple directories with commas. Example: web/cache/*,web/backup)';
$wb['backup_excludes_error_regex'] = 'The excluded directories contain invalid characters.';
$wb['invalid_custom_php_ini_settings_txt'] = 'Invalid php.ini settings';
$wb['invalid_system_user_or_group_txt'] = 'Invalid system user or group';
?>
interface/web/sites/lib/lang/br_shell_user.lng
@@ -31,4 +31,6 @@
$wb['invalid_system_user_or_group_txt'] = 'Invalid system user or group';
$wb['directory_error_regex'] = 'Invalid directory';
$wb['shell_error_regex'] = 'Invalid shell';
$wb['invalid_username_txt'] = 'Invalid Username';
$wb['directory_error_notinweb'] = 'The directory has to be inside the web root.';
?>
interface/web/sites/lib/lang/br_web_domain.lng
@@ -127,4 +127,5 @@
$wb['backup_excludes_note_txt'] = '(Separate multiple directories with commas. Example: web/cache/*,web/backup)';
$wb['backup_excludes_error_regex'] = 'The excluded directories contain invalid characters.';
$wb['invalid_custom_php_ini_settings_txt'] = 'Invalid php.ini settings';
$wb['invalid_system_user_or_group_txt'] = 'Invalid system user or group';
?>
interface/web/sites/lib/lang/cz_ftp_user.lng
@@ -24,13 +24,13 @@
$wb['directory_error_empty'] = 'Adresář je prázdný.';
$wb['directory_error_notinweb'] = 'Adresář není uvnitř webového kořenového adresáře.';
$wb['parent_domain_id_error_empty'] = 'Nevybrána žádná webová stránka.';
$wb['quota_size_error_regex'] = 'Quota: enter a -1 for unlimited or a number > 0';
$wb['quota_size_error_regex'] = 'Kvóta: zadejte -1 je bez omezení nebo číslo > 0 ';
$wb['dir_dot_error'] = 'No .. in path allowed.';
$wb['dir_slashdot_error'] = 'No ./ in path allowed.';
$wb['generate_password_txt'] = 'Generovat heslo';
$wb['repeat_password_txt'] = 'Opakujte heslo';
$wb['password_mismatch_txt'] = 'Hesla se neshodují.';
$wb['password_match_txt'] = 'Hesla se shodují.';
$wb['invalid_system_user_or_group_txt'] = 'Invalid system user or group';
$wb['directory_error_regex'] = 'Invalid directory';
$wb['invalid_system_user_or_group_txt'] = 'Neplatný systémový uživatel nebo skupina';
$wb['directory_error_regex'] = 'Neplatný adresář';
?>
interface/web/sites/lib/lang/cz_shell_user.lng
@@ -28,7 +28,9 @@
$wb['password_match_txt'] = 'Hesla se shodují.';
$wb['username_must_not_exceed_32_chars_txt'] = 'The username must not exceed 32 characters.';
$wb['username_not_allowed_txt'] = 'The username is not allowed.';
$wb['invalid_system_user_or_group_txt'] = 'Invalid system user or group';
$wb['directory_error_regex'] = 'Invalid directory';
$wb['invalid_system_user_or_group_txt'] = 'Neplatný systémový uživatel nebo skupina';
$wb['directory_error_regex'] = 'Neplatný adresář';
$wb['shell_error_regex'] = 'Invalid shell';
$wb['invalid_username_txt'] = 'Invalid Username';
$wb['directory_error_notinweb'] = 'The directory has to be inside the web root.';
?>
interface/web/sites/lib/lang/cz_web_aliasdomain.lng
@@ -35,7 +35,7 @@
$wb['ssl_txt'] = 'SSL';
$wb['suexec_txt'] = 'SuEXEC';
$wb['php_txt'] = 'PHP';
$wb['client_txt'] = 'Client';
$wb['client_txt'] = 'Klient';
$wb['limit_web_domain_txt'] = 'The max. number of web domains for your account is reached.';
$wb['limit_web_aliasdomain_txt'] = 'The max. number of aliasdomains for your account is reached.';
$wb['limit_web_subdomain_txt'] = 'The max. number of web subdomains for your account is reached.';
@@ -52,7 +52,7 @@
$wb['error_ssl_organisation_unit_empty'] = 'SSL Organisation Unit is empty.';
$wb['error_ssl_country_empty'] = 'SSL Country is empty.';
$wb['error_ssl_cert_empty'] = 'SSL Certificate field is empty';
$wb['client_group_id_txt'] = 'Client';
$wb['client_group_id_txt'] = 'Klient';
$wb['stats_password_txt'] = 'Set Webstatistics password';
$wb['allow_override_txt'] = 'Apache AllowOverride';
$wb['limit_web_quota_free_txt'] = 'Max. available Harddisk Quota';
interface/web/sites/lib/lang/cz_web_domain.lng
@@ -127,4 +127,5 @@
$wb['backup_excludes_note_txt'] = '(Oddělte více adresářů čárkami. Vzor: web/cache/*,web/backup)';
$wb['backup_excludes_error_regex'] = 'Vyloučené adresáře obsahují neplatné znaky.';
$wb['invalid_custom_php_ini_settings_txt'] = 'Neplatné nastavení php.ini';
$wb['invalid_system_user_or_group_txt'] = 'Invalid system user or group';
?>
interface/web/sites/lib/lang/cz_web_folder_list.lng
@@ -4,5 +4,5 @@
$wb['server_id_txt'] = 'Server';
$wb['parent_domain_id_txt'] = 'Webové stránky';
$wb['path_txt'] = 'Cesta';
$wb['add_new_record_txt'] = 'Add new Folder';
$wb['add_new_record_txt'] = 'Přidat novou složku';
?>
interface/web/sites/lib/lang/cz_web_folder_user_list.lng
@@ -3,5 +3,5 @@
$wb['active_txt'] = 'Aktivní';
$wb['web_folder_id_txt'] = 'Složka';
$wb['username_txt'] = 'Uživatelské jméno';
$wb['add_new_record_txt'] = 'Add new Folder User';
$wb['add_new_record_txt'] = 'Přidat nového uživatele složky';
?>
interface/web/sites/lib/lang/cz_web_vhost_subdomain.lng
@@ -1,6 +1,6 @@
<?php
$wb['parent_domain_id_txt'] = 'Rodičovské webové stránky';
$wb['web_folder_txt'] = 'Web folder';
$wb['web_folder_txt'] = 'Webová složka';
$wb['web_folder_invalid_txt'] = 'The web folder is invalid, please choose a different one.';
$wb['web_folder_unique_txt'] = 'The web folder is already used, please choose a different one.';
$wb['backup_interval_txt'] = 'Interval zálohování';
interface/web/sites/lib/lang/cz_webdav_user.lng
@@ -1,17 +1,17 @@
<?php
$wb['dir_txt'] = 'Directory';
$wb['dir_txt'] = 'Webdav adresář';
$wb['server_id_txt'] = 'Server';
$wb['parent_domain_id_txt'] = 'Webové stránky';
$wb['username_txt'] = 'Uživatelské jméno';
$wb['password_txt'] = 'Heslo';
$wb['password_strength_txt'] = 'Síla hesla';
$wb['active_txt'] = 'Aktivní';
$wb['limit_webdav_user_txt'] = 'The max. number of webdav users for your account is reached.';
$wb['username_error_empty'] = 'Username is empty.';
$wb['username_error_unique'] = 'The username must be unique.';
$wb['username_error_regex'] = 'The username contains characters that are not allowed.';
$wb['directory_error_empty'] = 'Directory empty.';
$wb['parent_domain_id_error_empty'] = 'No website selected.';
$wb['limit_webdav_user_txt'] = 'Byl dosažen max. počet WebDAV uživatelů pro váš účet.';
$wb['username_error_empty'] = 'Uživatelské jméno je prázdné.';
$wb['username_error_unique'] = 'Uživatelské jméno musí být unikátní.';
$wb['username_error_regex'] = 'Uživatelské jméno obsahuje znaky, které nejsou povoleny.';
$wb['directory_error_empty'] = 'Webdav adresář je prázdný.';
$wb['parent_domain_id_error_empty'] = 'Není vybrán žádný web.';
$wb['dir_dot_error'] = 'No .. in path allowed.';
$wb['dir_slashdot_error'] = 'No ./ in path allowed.';
$wb['generate_password_txt'] = 'Generovat heslo';
interface/web/sites/lib/lang/de_shell_user.lng
@@ -31,4 +31,6 @@
$wb['invalid_system_user_or_group_txt'] = 'Invalid system user or group';
$wb['directory_error_regex'] = 'Invalid directory';
$wb['shell_error_regex'] = 'Invalid shell';
$wb['invalid_username_txt'] = 'Invalid Username';
$wb['directory_error_notinweb'] = 'The directory has to be inside the web root.';
?>
interface/web/sites/lib/lang/de_web_domain.lng
@@ -127,4 +127,5 @@
$wb['backup_excludes_note_txt'] = '(Mehrere Verzeichnisse mit Kommas trennen. Beispiel: web/cache/*,web/backup)';
$wb['backup_excludes_error_regex'] = 'Die auszuschließenden Verzeichnisse enthalten ungültige Zeichen.';
$wb['invalid_custom_php_ini_settings_txt'] = 'Unzulässige php.ini-Einstellungen';
$wb['invalid_system_user_or_group_txt'] = 'Invalid system user or group';
?>
interface/web/sites/lib/lang/el_shell_user.lng
@@ -31,4 +31,6 @@
$wb['invalid_system_user_or_group_txt'] = 'Invalid system user or group';
$wb['directory_error_regex'] = 'Invalid directory';
$wb['shell_error_regex'] = 'Invalid shell';
$wb['invalid_username_txt'] = 'Invalid Username';
$wb['directory_error_notinweb'] = 'The directory has to be inside the web root.';
?>
interface/web/sites/lib/lang/el_web_domain.lng
@@ -127,4 +127,5 @@
$wb['backup_excludes_note_txt'] = '(Separate multiple directories with commas. Example: web/cache/*,web/backup)';
$wb['backup_excludes_error_regex'] = 'The excluded directories contain invalid characters.';
$wb['invalid_custom_php_ini_settings_txt'] = 'Invalid php.ini settings';
$wb['invalid_system_user_or_group_txt'] = 'Invalid system user or group';
?>
interface/web/sites/lib/lang/en_shell_user.lng
@@ -31,4 +31,6 @@
$wb['invalid_system_user_or_group_txt'] = 'Invalid system user or group';
$wb['directory_error_regex'] = 'Invalid directory';
$wb['shell_error_regex'] = 'Invalid shell';
$wb['invalid_username_txt'] = 'Invalid Username';
$wb['directory_error_notinweb'] = 'The directory has to be inside the web root.';
?>
interface/web/sites/lib/lang/en_web_domain.lng
@@ -127,4 +127,5 @@
$wb['backup_excludes_note_txt'] = '(Separate multiple directories with commas. Example: web/cache/*,web/backup)';
$wb['backup_excludes_error_regex'] = 'The excluded directories contain invalid characters.';
$wb['invalid_custom_php_ini_settings_txt'] = 'Invalid php.ini settings';
$wb['invalid_system_user_or_group_txt'] = 'Invalid system user or group';
?>
interface/web/sites/lib/lang/es_shell_user.lng
@@ -31,4 +31,6 @@
$wb['invalid_system_user_or_group_txt'] = 'Invalid system user or group';
$wb['directory_error_regex'] = 'Invalid directory';
$wb['shell_error_regex'] = 'Invalid shell';
$wb['invalid_username_txt'] = 'Invalid Username';
$wb['directory_error_notinweb'] = 'The directory has to be inside the web root.';
?>
interface/web/sites/lib/lang/es_web_domain.lng
@@ -127,4 +127,5 @@
$wb['backup_excludes_note_txt'] = '(Separate multiple directories with commas. Example: web/cache/*,web/backup)';
$wb['backup_excludes_error_regex'] = 'The excluded directories contain invalid characters.';
$wb['invalid_custom_php_ini_settings_txt'] = 'Invalid php.ini settings';
$wb['invalid_system_user_or_group_txt'] = 'Invalid system user or group';
?>
interface/web/sites/lib/lang/fi_shell_user.lng
@@ -31,4 +31,6 @@
$wb['invalid_system_user_or_group_txt'] = 'Invalid system user or group';
$wb['directory_error_regex'] = 'Invalid directory';
$wb['shell_error_regex'] = 'Invalid shell';
$wb['invalid_username_txt'] = 'Invalid Username';
$wb['directory_error_notinweb'] = 'The directory has to be inside the web root.';
?>
interface/web/sites/lib/lang/fi_web_domain.lng
@@ -127,4 +127,5 @@
$wb['backup_excludes_note_txt'] = '(Separate multiple directories with commas. Example: web/cache/*,web/backup)';
$wb['backup_excludes_error_regex'] = 'The excluded directories contain invalid characters.';
$wb['invalid_custom_php_ini_settings_txt'] = 'Invalid php.ini settings';
$wb['invalid_system_user_or_group_txt'] = 'Invalid system user or group';
?>
interface/web/sites/lib/lang/fr_shell_user.lng
@@ -31,4 +31,6 @@
$wb['invalid_system_user_or_group_txt'] = 'Invalid system user or group';
$wb['directory_error_regex'] = 'Invalid directory';
$wb['shell_error_regex'] = 'Invalid shell';
$wb['invalid_username_txt'] = 'Invalid Username';
$wb['directory_error_notinweb'] = 'The directory has to be inside the web root.';
?>
interface/web/sites/lib/lang/fr_web_domain.lng
@@ -127,4 +127,5 @@
$wb['backup_excludes_note_txt'] = '(Separate multiple directories with commas. Example: web/cache/*,web/backup)';
$wb['backup_excludes_error_regex'] = 'The excluded directories contain invalid characters.';
$wb['invalid_custom_php_ini_settings_txt'] = 'Invalid php.ini settings';
$wb['invalid_system_user_or_group_txt'] = 'Invalid system user or group';
?>
interface/web/sites/lib/lang/hr_shell_user.lng
@@ -31,4 +31,6 @@
$wb['invalid_system_user_or_group_txt'] = 'Invalid system user or group';
$wb['directory_error_regex'] = 'Invalid directory';
$wb['shell_error_regex'] = 'Invalid shell';
$wb['invalid_username_txt'] = 'Invalid Username';
$wb['directory_error_notinweb'] = 'The directory has to be inside the web root.';
?>
interface/web/sites/lib/lang/hr_web_domain.lng
@@ -127,4 +127,5 @@
$wb['backup_excludes_note_txt'] = '(Separate multiple directories with commas. Example: web/cache/*,web/backup)';
$wb['backup_excludes_error_regex'] = 'The excluded directories contain invalid characters.';
$wb['invalid_custom_php_ini_settings_txt'] = 'Invalid php.ini settings';
$wb['invalid_system_user_or_group_txt'] = 'Invalid system user or group';
?>
interface/web/sites/lib/lang/hu_shell_user.lng
@@ -31,4 +31,6 @@
$wb['invalid_system_user_or_group_txt'] = 'Invalid system user or group';
$wb['directory_error_regex'] = 'Invalid directory';
$wb['shell_error_regex'] = 'Invalid shell';
$wb['invalid_username_txt'] = 'Invalid Username';
$wb['directory_error_notinweb'] = 'The directory has to be inside the web root.';
?>
interface/web/sites/lib/lang/hu_web_domain.lng
@@ -127,4 +127,5 @@
$wb['backup_excludes_note_txt'] = '(Separate multiple directories with commas. Example: web/cache/*,web/backup)';
$wb['backup_excludes_error_regex'] = 'The excluded directories contain invalid characters.';
$wb['invalid_custom_php_ini_settings_txt'] = 'Invalid php.ini settings';
$wb['invalid_system_user_or_group_txt'] = 'Invalid system user or group';
?>
interface/web/sites/lib/lang/id_shell_user.lng
@@ -31,4 +31,6 @@
$wb['invalid_system_user_or_group_txt'] = 'Invalid system user or group';
$wb['directory_error_regex'] = 'Invalid directory';
$wb['shell_error_regex'] = 'Invalid shell';
$wb['invalid_username_txt'] = 'Invalid Username';
$wb['directory_error_notinweb'] = 'The directory has to be inside the web root.';
?>
interface/web/sites/lib/lang/id_web_domain.lng
@@ -127,4 +127,5 @@
$wb['backup_excludes_note_txt'] = '(Separate multiple directories with commas. Example: web/cache/*,web/backup)';
$wb['backup_excludes_error_regex'] = 'The excluded directories contain invalid characters.';
$wb['invalid_custom_php_ini_settings_txt'] = 'Invalid php.ini settings';
$wb['invalid_system_user_or_group_txt'] = 'Invalid system user or group';
?>
interface/web/sites/lib/lang/it_shell_user.lng
@@ -31,4 +31,6 @@
$wb['invalid_system_user_or_group_txt'] = 'Invalid system user or group';
$wb['directory_error_regex'] = 'Invalid directory';
$wb['shell_error_regex'] = 'Invalid shell';
$wb['invalid_username_txt'] = 'Invalid Username';
$wb['directory_error_notinweb'] = 'The directory has to be inside the web root.';
?>
interface/web/sites/lib/lang/it_web_domain.lng
@@ -127,4 +127,5 @@
$wb['backup_excludes_note_txt'] = '(Separate multiple directories with commas. Example: web/cache/*,web/backup)';
$wb['backup_excludes_error_regex'] = 'The excluded directories contain invalid characters.';
$wb['invalid_custom_php_ini_settings_txt'] = 'Invalid php.ini settings';
$wb['invalid_system_user_or_group_txt'] = 'Invalid system user or group';
?>
interface/web/sites/lib/lang/ja_shell_user.lng
@@ -31,4 +31,6 @@
$wb['invalid_system_user_or_group_txt'] = 'Invalid system user or group';
$wb['directory_error_regex'] = 'Invalid directory';
$wb['shell_error_regex'] = 'Invalid shell';
$wb['invalid_username_txt'] = 'Invalid Username';
$wb['directory_error_notinweb'] = 'The directory has to be inside the web root.';
?>
interface/web/sites/lib/lang/ja_web_domain.lng
@@ -127,4 +127,5 @@
$wb['backup_excludes_note_txt'] = '(Separate multiple directories with commas. Example: web/cache/*,web/backup)';
$wb['backup_excludes_error_regex'] = 'The excluded directories contain invalid characters.';
$wb['invalid_custom_php_ini_settings_txt'] = 'Invalid php.ini settings';
$wb['invalid_system_user_or_group_txt'] = 'Invalid system user or group';
?>
interface/web/sites/lib/lang/nl_shell_user.lng
@@ -31,4 +31,6 @@
$wb['invalid_system_user_or_group_txt'] = 'Invalid system user or group';
$wb['directory_error_regex'] = 'Invalid directory';
$wb['shell_error_regex'] = 'Invalid shell';
$wb['invalid_username_txt'] = 'Invalid Username';
$wb['directory_error_notinweb'] = 'The directory has to be inside the web root.';
?>
interface/web/sites/lib/lang/nl_web_domain.lng
@@ -127,4 +127,5 @@
$wb['backup_excludes_note_txt'] = '(Separate multiple directories with commas. Example: web/cache/*,web/backup)';
$wb['backup_excludes_error_regex'] = 'The excluded directories contain invalid characters.';
$wb['invalid_custom_php_ini_settings_txt'] = 'Invalid php.ini settings';
$wb['invalid_system_user_or_group_txt'] = 'Invalid system user or group';
?>
interface/web/sites/lib/lang/pl_shell_user.lng
@@ -31,4 +31,6 @@
$wb['invalid_system_user_or_group_txt'] = 'Invalid system user or group';
$wb['directory_error_regex'] = 'Invalid directory';
$wb['shell_error_regex'] = 'Invalid shell';
$wb['invalid_username_txt'] = 'Invalid Username';
$wb['directory_error_notinweb'] = 'The directory has to be inside the web root.';
?>
interface/web/sites/lib/lang/pl_web_domain.lng
@@ -127,4 +127,5 @@
$wb['backup_excludes_note_txt'] = '(Separate multiple directories with commas. Example: web/cache/*,web/backup)';
$wb['backup_excludes_error_regex'] = 'The excluded directories contain invalid characters.';
$wb['invalid_custom_php_ini_settings_txt'] = 'Invalid php.ini settings';
$wb['invalid_system_user_or_group_txt'] = 'Invalid system user or group';
?>
interface/web/sites/lib/lang/pt_shell_user.lng
@@ -31,4 +31,6 @@
$wb['invalid_system_user_or_group_txt'] = 'Invalid system user or group';
$wb['directory_error_regex'] = 'Invalid directory';
$wb['shell_error_regex'] = 'Invalid shell';
$wb['invalid_username_txt'] = 'Invalid Username';
$wb['directory_error_notinweb'] = 'The directory has to be inside the web root.';
?>
interface/web/sites/lib/lang/pt_web_domain.lng
@@ -127,4 +127,5 @@
$wb['backup_excludes_note_txt'] = '(Separate multiple directories with commas. Example: web/cache/*,web/backup)';
$wb['backup_excludes_error_regex'] = 'The excluded directories contain invalid characters.';
$wb['invalid_custom_php_ini_settings_txt'] = 'Invalid php.ini settings';
$wb['invalid_system_user_or_group_txt'] = 'Invalid system user or group';
?>
interface/web/sites/lib/lang/ro_shell_user.lng
@@ -31,4 +31,6 @@
$wb['invalid_system_user_or_group_txt'] = 'Invalid system user or group';
$wb['directory_error_regex'] = 'Invalid directory';
$wb['shell_error_regex'] = 'Invalid shell';
$wb['invalid_username_txt'] = 'Invalid Username';
$wb['directory_error_notinweb'] = 'The directory has to be inside the web root.';
?>
interface/web/sites/lib/lang/ro_web_domain.lng
@@ -127,4 +127,5 @@
$wb['backup_excludes_note_txt'] = '(Separate multiple directories with commas. Example: web/cache/*,web/backup)';
$wb['backup_excludes_error_regex'] = 'The excluded directories contain invalid characters.';
$wb['invalid_custom_php_ini_settings_txt'] = 'Invalid php.ini settings';
$wb['invalid_system_user_or_group_txt'] = 'Invalid system user or group';
?>
interface/web/sites/lib/lang/ru_shell_user.lng
@@ -31,4 +31,6 @@
$wb['invalid_system_user_or_group_txt'] = 'Invalid system user or group';
$wb['directory_error_regex'] = 'Invalid directory';
$wb['shell_error_regex'] = 'Invalid shell';
$wb['invalid_username_txt'] = 'Invalid Username';
$wb['directory_error_notinweb'] = 'The directory has to be inside the web root.';
?>
interface/web/sites/lib/lang/ru_web_domain.lng
@@ -127,4 +127,5 @@
$wb['backup_excludes_note_txt'] = '(Separate multiple directories with commas. Example: web/cache/*,web/backup)';
$wb['backup_excludes_error_regex'] = 'The excluded directories contain invalid characters.';
$wb['invalid_custom_php_ini_settings_txt'] = 'Invalid php.ini settings';
$wb['invalid_system_user_or_group_txt'] = 'Invalid system user or group';
?>
interface/web/sites/lib/lang/se.lng
@@ -31,5 +31,5 @@
$wb['Installed packages'] = 'Installerade paket';
$wb['Update Packagelist'] = 'Uppdatera paketlista';
$wb['Subdomain (Vhost)'] = 'Underdomän (Vhost)';
$wb['error_proxy_requires_url'] = 'Redirect Type \"proxy\" requires a URL as the redirect path.';
$wb['error_proxy_requires_url'] = 'Redirect Type \\"proxy\\" requires a URL as the redirect path.';
?>
interface/web/sites/lib/lang/se_aps.lng
@@ -38,14 +38,14 @@
$wb['error_license_agreement'] = 'In order to continue you have to accept the license agreement.';
$wb['error_no_database_pw'] = 'You have provided no valid database password.';
$wb['error_short_database_pw'] = 'Please choose a longer database password.';
$wb['error_no_value_for'] = 'The field \"%s\" must not be empty.';
$wb['error_short_value_for'] = 'The field \"%s\" requires a longer input value.';
$wb['error_long_value_for'] = 'The field \"%s\" requires a shorter input value.';
$wb['error_inv_value_for'] = 'You have entered an invalid value for the field \"%s\".';
$wb['error_inv_email_for'] = 'You have entered an invalid mail address for the field \"%s\".';
$wb['error_inv_domain_for'] = 'You have entered an invalid domain for the field \"%s\".';
$wb['error_inv_integer_for'] = 'You have entered an invalid number for the field \"%s\".';
$wb['error_inv_float_for'] = 'You have entered an invalid floating point number for the field \"%s\".';
$wb['error_no_value_for'] = 'The field \\"%s\\" must not be empty.';
$wb['error_short_value_for'] = 'The field \\"%s\\" requires a longer input value.';
$wb['error_long_value_for'] = 'The field \\"%s\\" requires a shorter input value.';
$wb['error_inv_value_for'] = 'You have entered an invalid value for the field \\"%s\\".';
$wb['error_inv_email_for'] = 'You have entered an invalid mail address for the field \\"%s\\".';
$wb['error_inv_domain_for'] = 'You have entered an invalid domain for the field \\"%s\\".';
$wb['error_inv_integer_for'] = 'You have entered an invalid number for the field \\"%s\\".';
$wb['error_inv_float_for'] = 'You have entered an invalid floating point number for the field \\"%s\\".';
$wb['error_used_location'] = 'The installation path already contains a package installation.';
$wb['installation_task_txt'] = 'Installation planerad';
$wb['installation_error_txt'] = 'Installationsfel';
interface/web/sites/lib/lang/se_shell_user.lng
@@ -31,4 +31,6 @@
$wb['invalid_system_user_or_group_txt'] = 'Invalid system user or group';
$wb['directory_error_regex'] = 'Invalid directory';
$wb['shell_error_regex'] = 'Invalid shell';
$wb['invalid_username_txt'] = 'Invalid Username';
$wb['directory_error_notinweb'] = 'The directory has to be inside the web root.';
?>
interface/web/sites/lib/lang/se_web_domain.lng
@@ -127,4 +127,5 @@
$wb['backup_excludes_note_txt'] = '(Separate multiple directories with commas. Example: web/cache/*,web/backup)';
$wb['backup_excludes_error_regex'] = 'The excluded directories contain invalid characters.';
$wb['invalid_custom_php_ini_settings_txt'] = 'Ogiltiga php.ini-inställningar';
$wb['invalid_system_user_or_group_txt'] = 'Invalid system user or group';
?>
interface/web/sites/lib/lang/se_web_subdomain.lng
@@ -42,5 +42,5 @@
$wb['domain_error_wildcard'] = 'Wildcard subdomains are not allowed.';
$wb['proxy_directives_txt'] = 'Proxy Directives';
$wb['available_proxy_directive_snippets_txt'] = 'Available Proxy Directive Snippets:';
$wb['error_proxy_requires_url'] = 'Redirect Type \"proxy\" requires a URL as the redirect path.';
$wb['error_proxy_requires_url'] = 'Redirect Type \\"proxy\\" requires a URL as the redirect path.';
?>
interface/web/sites/lib/lang/sk_shell_user.lng
@@ -31,4 +31,6 @@
$wb['invalid_system_user_or_group_txt'] = 'Invalid system user or group';
$wb['directory_error_regex'] = 'Invalid directory';
$wb['shell_error_regex'] = 'Invalid shell';
$wb['invalid_username_txt'] = 'Invalid Username';
$wb['directory_error_notinweb'] = 'The directory has to be inside the web root.';
?>
interface/web/sites/lib/lang/sk_web_domain.lng
@@ -127,4 +127,5 @@
$wb['backup_excludes_note_txt'] = '(Separate multiple directories with commas. Example: web/cache/*,web/backup)';
$wb['backup_excludes_error_regex'] = 'The excluded directories contain invalid characters.';
$wb['invalid_custom_php_ini_settings_txt'] = 'Invalid php.ini settings';
$wb['invalid_system_user_or_group_txt'] = 'Invalid system user or group';
?>
interface/web/sites/lib/lang/tr_shell_user.lng
@@ -31,4 +31,6 @@
$wb['invalid_system_user_or_group_txt'] = 'Invalid system user or group';
$wb['directory_error_regex'] = 'Invalid directory';
$wb['shell_error_regex'] = 'Invalid shell';
$wb['invalid_username_txt'] = 'Invalid Username';
$wb['directory_error_notinweb'] = 'The directory has to be inside the web root.';
?>
interface/web/sites/lib/lang/tr_web_domain.lng
@@ -127,4 +127,5 @@
$wb['backup_excludes_note_txt'] = '(Separate multiple directories with commas. Example: web/cache/*,web/backup)';
$wb['backup_excludes_error_regex'] = 'The excluded directories contain invalid characters.';
$wb['invalid_custom_php_ini_settings_txt'] = 'Invalid php.ini settings';
$wb['invalid_system_user_or_group_txt'] = 'Invalid system user or group';
?>
interface/web/sites/web_domain_edit.php
@@ -406,8 +406,15 @@
        }
        $ssl_domain_select = '';
        $tmp = $app->db->queryOneRecord("SELECT domain FROM web_domain WHERE domain_id = ".$this->id);
        $ssl_domains = array($tmp["domain"], 'www.'.$tmp["domain"], '*.'.$tmp["domain"]);
        $ssl_domains = array();
        $tmpd = $app->db->queryAllRecords("SELECT domain, type FROM web_domain WHERE domain_id = ".$this->id." OR parent_domain_id = ".$this->id);
        foreach($tmpd as $tmp) {
            if($tmp['type'] == 'subdomain' || $tmp['type'] == 'vhostsubdomain') {
                $ssl_domains[] = $tmp["domain"];
            } else {
                $ssl_domains = array_merge($ssl_domains, array($tmp["domain"],'www.'.$tmp["domain"],'*.'.$tmp["domain"]));
            }
        }
        if(is_array($ssl_domains)) {
            foreach( $ssl_domains as $ssl_domain) {
                $selected = ($ssl_domain == $this->dataRecord['ssl_domain'])?'SELECTED':'';
interface/web/themes/blue/ispconfig_version
@@ -1 +1 @@
3.0.5.4p2
3.0.5.4p3
interface/web/themes/default-304/css/central.css
File was deleted
interface/web/themes/default-304/css/navigation/nav_side.css
File was deleted
interface/web/themes/default-304/css/navigation/nav_top.css
File was deleted
interface/web/themes/default-304/css/patches/central.css
File was deleted
interface/web/themes/default-304/css/print/print_100.css
File was deleted
interface/web/themes/default-304/css/screen/basemod.css
File was deleted
interface/web/themes/default-304/css/screen/basemod_2col_left_seo.css
File was deleted
interface/web/themes/default-304/css/screen/content.css
File was deleted
interface/web/themes/default-304/css/screen/content_ispc.css
File was deleted
interface/web/themes/default-304/css/screen/jquery-ui-custom.css
File was deleted
interface/web/themes/default-304/css/screen/redmond/images/ui-bg_flat_0_aaaaaa_40x100.png
Binary files differ
interface/web/themes/default-304/css/screen/redmond/images/ui-bg_flat_55_fbec88_40x100.png
Binary files differ
interface/web/themes/default-304/css/screen/redmond/images/ui-bg_glass_75_d0e5f5_1x400.png
Binary files differ
interface/web/themes/default-304/css/screen/redmond/images/ui-bg_glass_85_dfeffc_1x400.png
Binary files differ
interface/web/themes/default-304/css/screen/redmond/images/ui-bg_glass_95_fef1ec_1x400.png
Binary files differ
interface/web/themes/default-304/css/screen/redmond/images/ui-bg_gloss-wave_55_5c9ccc_500x100.png
Binary files differ
interface/web/themes/default-304/css/screen/redmond/images/ui-bg_inset-hard_100_f5f8f9_1x100.png
Binary files differ
interface/web/themes/default-304/css/screen/redmond/images/ui-bg_inset-hard_100_fcfdfd_1x100.png
Binary files differ
interface/web/themes/default-304/css/screen/redmond/images/ui-icons_217bc0_256x240.png
Binary files differ
interface/web/themes/default-304/css/screen/redmond/images/ui-icons_2e83ff_256x240.png
Binary files differ
interface/web/themes/default-304/css/screen/redmond/images/ui-icons_469bdd_256x240.png
Binary files differ
interface/web/themes/default-304/css/screen/redmond/images/ui-icons_6da8d5_256x240.png
Binary files differ
interface/web/themes/default-304/css/screen/redmond/images/ui-icons_cd0a0a_256x240.png
Binary files differ
interface/web/themes/default-304/css/screen/redmond/images/ui-icons_d8e7f3_256x240.png
Binary files differ
interface/web/themes/default-304/css/screen/redmond/images/ui-icons_f9bd01_256x240.png
Binary files differ
interface/web/themes/default-304/css/screen/redmond/jquery-ui-1.8.16.custom.css
File was deleted
interface/web/themes/default-304/css/screen/tipsy.css
File was deleted
interface/web/themes/default-304/css/screen/uni-form-generic.css
File was deleted
interface/web/themes/default-304/css/screen/uni-form.css
File was deleted
interface/web/themes/default-304/icons/device_sprite.png
Binary files differ
interface/web/themes/default-304/icons/flags_sprite.png
Binary files differ
interface/web/themes/default-304/icons/x12/accept.png
Binary files differ
interface/web/themes/default-304/icons/x12/accept_blue.png
Binary files differ
interface/web/themes/default-304/icons/x12/accept_green.png
Binary files differ
interface/web/themes/default-304/icons/x12/arrow_2_left_round.png
Binary files differ
interface/web/themes/default-304/icons/x12/arrow_2_right_round.png
Binary files differ
interface/web/themes/default-304/icons/x12/arrow_left_blue_round.png
Binary files differ
interface/web/themes/default-304/icons/x12/arrow_right_blue_round.png
Binary files differ
interface/web/themes/default-304/icons/x12/article.png
Binary files differ
interface/web/themes/default-304/icons/x12/article_text.png
Binary files differ
interface/web/themes/default-304/icons/x12/bar_graph.png
Binary files differ
interface/web/themes/default-304/icons/x12/burst.png
Binary files differ
interface/web/themes/default-304/icons/x12/calendar.png
Binary files differ
interface/web/themes/default-304/icons/x12/calendar2.png
Binary files differ
interface/web/themes/default-304/icons/x12/cancel.png
Binary files differ
interface/web/themes/default-304/icons/x12/cancel_round.png
Binary files differ
interface/web/themes/default-304/icons/x12/clock.png
Binary files differ
interface/web/themes/default-304/icons/x12/code.png
Binary files differ
interface/web/themes/default-304/icons/x12/comment_blue.png
Binary files differ
interface/web/themes/default-304/icons/x12/dollar.png
Binary files differ
interface/web/themes/default-304/icons/x12/double_comment.png
Binary files differ
interface/web/themes/default-304/icons/x12/download.png
Binary files differ
interface/web/themes/default-304/icons/x12/envelope.png
Binary files differ
interface/web/themes/default-304/icons/x12/flag_black.png
Binary files differ
interface/web/themes/default-304/icons/x12/flag_blue.png
Binary files differ
interface/web/themes/default-304/icons/x12/flag_green.png
Binary files differ
interface/web/themes/default-304/icons/x12/flag_orange.png
Binary files differ
interface/web/themes/default-304/icons/x12/flag_red.png
Binary files differ
interface/web/themes/default-304/icons/x12/flag_yellow.png
Binary files differ
interface/web/themes/default-304/icons/x12/folder.png
Binary files differ
interface/web/themes/default-304/icons/x12/info.png
Binary files differ
interface/web/themes/default-304/icons/x12/link.png
Binary files differ
interface/web/themes/default-304/icons/x12/lock.png
Binary files differ
interface/web/themes/default-304/icons/x12/magnify.png
Binary files differ
interface/web/themes/default-304/icons/x12/minus.png
Binary files differ
interface/web/themes/default-304/icons/x12/minus_round.png
Binary files differ
interface/web/themes/default-304/icons/x12/money.png
Binary files differ
interface/web/themes/default-304/icons/x12/new.png
Binary files differ
interface/web/themes/default-304/icons/x12/pencil.png
Binary files differ
interface/web/themes/default-304/icons/x12/pictures.png
Binary files differ
interface/web/themes/default-304/icons/x12/plus.png
Binary files differ
interface/web/themes/default-304/icons/x12/printer.png
Binary files differ
interface/web/themes/default-304/icons/x12/question_blue.png
Binary files differ
interface/web/themes/default-304/icons/x12/refresh.png
Binary files differ
interface/web/themes/default-304/icons/x12/rss.png
Binary files differ
interface/web/themes/default-304/icons/x12/rss_round.png
Binary files differ
interface/web/themes/default-304/icons/x12/security_green.png
Binary files differ
interface/web/themes/default-304/icons/x12/security_orange.png
Binary files differ
interface/web/themes/default-304/icons/x12/security_red.png
Binary files differ
interface/web/themes/default-304/icons/x12/star.png
Binary files differ
interface/web/themes/default-304/icons/x12/star_blue.png
Binary files differ
interface/web/themes/default-304/icons/x12/stop.png
Binary files differ
interface/web/themes/default-304/icons/x12/stop_round.png
Binary files differ
interface/web/themes/default-304/icons/x12/upload.png
Binary files differ
interface/web/themes/default-304/icons/x12/world.png
Binary files differ
interface/web/themes/default-304/icons/x12/world2.png
Binary files differ
interface/web/themes/default-304/icons/x16-list/accept.png
Binary files differ
interface/web/themes/default-304/icons/x16-list/accept_blue.png
Binary files differ
interface/web/themes/default-304/icons/x16-list/accept_green.png
Binary files differ
interface/web/themes/default-304/icons/x16-list/arrow_2_left_round.png
Binary files differ
interface/web/themes/default-304/icons/x16-list/arrow_2_right_round.png
Binary files differ
interface/web/themes/default-304/icons/x16-list/arrow_left_blue_round.png
Binary files differ
interface/web/themes/default-304/icons/x16-list/arrow_right_blue_round.png
Binary files differ
interface/web/themes/default-304/icons/x16-list/article.png
Binary files differ
interface/web/themes/default-304/icons/x16-list/article_text.png
Binary files differ
interface/web/themes/default-304/icons/x16-list/bar_graph.png
Binary files differ
interface/web/themes/default-304/icons/x16-list/burst.png
Binary files differ
interface/web/themes/default-304/icons/x16-list/calendar.png
Binary files differ
interface/web/themes/default-304/icons/x16-list/calendar2.png
Binary files differ
interface/web/themes/default-304/icons/x16-list/cancel.png
Binary files differ
interface/web/themes/default-304/icons/x16-list/cancel_round.png
Binary files differ
interface/web/themes/default-304/icons/x16-list/clock.png
Binary files differ
interface/web/themes/default-304/icons/x16-list/code.png
Binary files differ
interface/web/themes/default-304/icons/x16-list/comment_blue.png
Binary files differ
interface/web/themes/default-304/icons/x16-list/dollar.png
Binary files differ
interface/web/themes/default-304/icons/x16-list/double_comment.png
Binary files differ
interface/web/themes/default-304/icons/x16-list/download.png
Binary files differ
interface/web/themes/default-304/icons/x16-list/envelope.png
Binary files differ
interface/web/themes/default-304/icons/x16-list/flag_black.png
Binary files differ
interface/web/themes/default-304/icons/x16-list/flag_blue.png
Binary files differ
interface/web/themes/default-304/icons/x16-list/flag_green.png
Binary files differ
interface/web/themes/default-304/icons/x16-list/flag_orange.png
Binary files differ
interface/web/themes/default-304/icons/x16-list/flag_red.png
Binary files differ
interface/web/themes/default-304/icons/x16-list/flag_yellow.png
Binary files differ
interface/web/themes/default-304/icons/x16-list/folder.png
Binary files differ
interface/web/themes/default-304/icons/x16-list/info.png
Binary files differ
interface/web/themes/default-304/icons/x16-list/link.png
Binary files differ
interface/web/themes/default-304/icons/x16-list/lock.png
Binary files differ
interface/web/themes/default-304/icons/x16-list/magnify.png
Binary files differ
interface/web/themes/default-304/icons/x16-list/minus.png
Binary files differ
interface/web/themes/default-304/icons/x16-list/minus_round.png
Binary files differ
interface/web/themes/default-304/icons/x16-list/money.png
Binary files differ
interface/web/themes/default-304/icons/x16-list/new.png
Binary files differ
interface/web/themes/default-304/icons/x16-list/pencil.png
Binary files differ
interface/web/themes/default-304/icons/x16-list/pictures.png
Binary files differ
interface/web/themes/default-304/icons/x16-list/plus.png
Binary files differ
interface/web/themes/default-304/icons/x16-list/printer.png
Binary files differ
interface/web/themes/default-304/icons/x16-list/question_blue.png
Binary files differ
interface/web/themes/default-304/icons/x16-list/refresh.png
Binary files differ
interface/web/themes/default-304/icons/x16-list/rss.png
Binary files differ
interface/web/themes/default-304/icons/x16-list/rss_round.png
Binary files differ
interface/web/themes/default-304/icons/x16-list/security_green.png
Binary files differ
interface/web/themes/default-304/icons/x16-list/security_orange.png
Binary files differ
interface/web/themes/default-304/icons/x16-list/security_red.png
Binary files differ
interface/web/themes/default-304/icons/x16-list/star.png
Binary files differ
interface/web/themes/default-304/icons/x16-list/star_blue.png
Binary files differ
interface/web/themes/default-304/icons/x16-list/stop.png
Binary files differ
interface/web/themes/default-304/icons/x16-list/stop_round.png
Binary files differ
interface/web/themes/default-304/icons/x16-list/upload.png
Binary files differ
interface/web/themes/default-304/icons/x16-list/world.png
Binary files differ
interface/web/themes/default-304/icons/x16-list/world2.png
Binary files differ
interface/web/themes/default-304/icons/x16/address_book.png
Binary files differ
interface/web/themes/default-304/icons/x16/address_book__arrow.png
Binary files differ
interface/web/themes/default-304/icons/x16/address_book__exclamation.png
Binary files differ
interface/web/themes/default-304/icons/x16/address_book__minus.png
Binary files differ
interface/web/themes/default-304/icons/x16/address_book__pencil.png
Binary files differ
interface/web/themes/default-304/icons/x16/address_book__plus.png
Binary files differ
interface/web/themes/default-304/icons/x16/address_book_blue.png
Binary files differ
interface/web/themes/default-304/icons/x16/arrow.png
Binary files differ
interface/web/themes/default-304/icons/x16/arrow_000_small.png
Binary files differ
interface/web/themes/default-304/icons/x16/arrow_045.png
Binary files differ
interface/web/themes/default-304/icons/x16/arrow_045_small.png
Binary files differ
interface/web/themes/default-304/icons/x16/arrow_090.png
Binary files differ
interface/web/themes/default-304/icons/x16/arrow_090_small.png
Binary files differ
interface/web/themes/default-304/icons/x16/arrow_135.png
Binary files differ
interface/web/themes/default-304/icons/x16/arrow_135_small.png
Binary files differ
interface/web/themes/default-304/icons/x16/arrow_180.png
Binary files differ
interface/web/themes/default-304/icons/x16/arrow_180_small.png
Binary files differ
interface/web/themes/default-304/icons/x16/arrow_225.png
Binary files differ
interface/web/themes/default-304/icons/x16/arrow_225_small.png
Binary files differ
interface/web/themes/default-304/icons/x16/arrow_270.png
Binary files differ
interface/web/themes/default-304/icons/x16/arrow_270_small.png
Binary files differ
interface/web/themes/default-304/icons/x16/arrow_315.png
Binary files differ
interface/web/themes/default-304/icons/x16/arrow_315_small.png
Binary files differ
interface/web/themes/default-304/icons/x16/arrow_circle.png
Binary files differ
interface/web/themes/default-304/icons/x16/arrow_circle_135.png
Binary files differ
interface/web/themes/default-304/icons/x16/arrow_circle_225.png
Binary files differ
interface/web/themes/default-304/icons/x16/arrow_circle_315.png
Binary files differ
interface/web/themes/default-304/icons/x16/arrow_circle_double.png
Binary files differ
interface/web/themes/default-304/icons/x16/arrow_circle_double_135.png
Binary files differ
interface/web/themes/default-304/icons/x16/arrow_skip.png
Binary files differ
interface/web/themes/default-304/icons/x16/arrow_skip_090.png
Binary files differ
interface/web/themes/default-304/icons/x16/arrow_skip_180.png
Binary files differ
interface/web/themes/default-304/icons/x16/arrow_skip_270.png
Binary files differ
interface/web/themes/default-304/icons/x16/arrow_stop.png
Binary files differ
interface/web/themes/default-304/icons/x16/arrow_stop_090.png
Binary files differ
interface/web/themes/default-304/icons/x16/arrow_stop_180.png
Binary files differ
interface/web/themes/default-304/icons/x16/arrow_stop_270.png
Binary files differ
interface/web/themes/default-304/icons/x16/auction_hammer.png
Binary files differ
interface/web/themes/default-304/icons/x16/auction_hammer__arrow.png
Binary files differ
interface/web/themes/default-304/icons/x16/auction_hammer__exclamation.png
Binary files differ
interface/web/themes/default-304/icons/x16/auction_hammer__minus.png
Binary files differ
interface/web/themes/default-304/icons/x16/auction_hammer__pencil.png
Binary files differ
interface/web/themes/default-304/icons/x16/auction_hammer__plus.png
Binary files differ
interface/web/themes/default-304/icons/x16/auction_hammer_gavel.png
Binary files differ
interface/web/themes/default-304/icons/x16/balloon.png
Binary files differ
interface/web/themes/default-304/icons/x16/balloon__arrow.png
Binary files differ
interface/web/themes/default-304/icons/x16/balloon__exclamation.png
Binary files differ
interface/web/themes/default-304/icons/x16/balloon__minus.png
Binary files differ
interface/web/themes/default-304/icons/x16/balloon__pencil.png
Binary files differ
interface/web/themes/default-304/icons/x16/balloon__plus.png
Binary files differ
interface/web/themes/default-304/icons/x16/balloon_left.png
Binary files differ
interface/web/themes/default-304/icons/x16/balloon_small.png
Binary files differ
interface/web/themes/default-304/icons/x16/balloon_small_left.png
Binary files differ
interface/web/themes/default-304/icons/x16/balloons.png
Binary files differ
interface/web/themes/default-304/icons/x16/balloons_arrow.png
Binary files differ
interface/web/themes/default-304/icons/x16/balloons_exclamation.png
Binary files differ
interface/web/themes/default-304/icons/x16/balloons_minus.png
Binary files differ
interface/web/themes/default-304/icons/x16/balloons_pencil.png
Binary files differ
interface/web/themes/default-304/icons/x16/balloons_plus.png
Binary files differ
interface/web/themes/default-304/icons/x16/bandaid.png
Binary files differ
interface/web/themes/default-304/icons/x16/bandaid_arrow.png
Binary files differ
interface/web/themes/default-304/icons/x16/bandaid_exclamation.png
Binary files differ
interface/web/themes/default-304/icons/x16/bandaid_minus.png
Binary files differ
interface/web/themes/default-304/icons/x16/bandaid_pencil.png
Binary files differ
interface/web/themes/default-304/icons/x16/bandaid_plus.png
Binary files differ
interface/web/themes/default-304/icons/x16/bandaid_small.png
Binary files differ
interface/web/themes/default-304/icons/x16/bank.png
Binary files differ
interface/web/themes/default-304/icons/x16/bank_arrow.png
Binary files differ
interface/web/themes/default-304/icons/x16/bank_exclamation.png
Binary files differ
interface/web/themes/default-304/icons/x16/bank_minus.png
Binary files differ
interface/web/themes/default-304/icons/x16/bank_pencil.png
Binary files differ
interface/web/themes/default-304/icons/x16/bank_plus.png
Binary files differ
interface/web/themes/default-304/icons/x16/bell.png
Binary files differ
interface/web/themes/default-304/icons/x16/bell__arrow.png
Binary files differ
interface/web/themes/default-304/icons/x16/bell__exclamation.png
Binary files differ
interface/web/themes/default-304/icons/x16/bell__minus.png
Binary files differ
interface/web/themes/default-304/icons/x16/bell__pencil.png
Binary files differ
interface/web/themes/default-304/icons/x16/bell__plus.png
Binary files differ
interface/web/themes/default-304/icons/x16/bell_disable.png
Binary files differ
interface/web/themes/default-304/icons/x16/bin.png
Binary files differ
interface/web/themes/default-304/icons/x16/bin__arrow.png
Binary files differ
interface/web/themes/default-304/icons/x16/bin__exclamation.png
Binary files differ
interface/web/themes/default-304/icons/x16/bin__minus.png
Binary files differ
interface/web/themes/default-304/icons/x16/bin__pencil.png
Binary files differ
interface/web/themes/default-304/icons/x16/bin__plus.png
Binary files differ
interface/web/themes/default-304/icons/x16/bin_full.png
Binary files differ
interface/web/themes/default-304/icons/x16/binocular.png
Binary files differ
interface/web/themes/default-304/icons/x16/binocular_arrow.png
Binary files differ
interface/web/themes/default-304/icons/x16/binocular_exclamation.png
Binary files differ
interface/web/themes/default-304/icons/x16/binocular_minus.png
Binary files differ
interface/web/themes/default-304/icons/x16/binocular_pencil.png
Binary files differ
interface/web/themes/default-304/icons/x16/binocular_plus.png
Binary files differ
interface/web/themes/default-304/icons/x16/blog.png
Binary files differ
interface/web/themes/default-304/icons/x16/blog__arrow.png
Binary files differ
interface/web/themes/default-304/icons/x16/blog__exclamation.png
Binary files differ
interface/web/themes/default-304/icons/x16/blog__minus.png
Binary files differ
interface/web/themes/default-304/icons/x16/blog__pencil.png
Binary files differ
interface/web/themes/default-304/icons/x16/blog__plus.png
Binary files differ
interface/web/themes/default-304/icons/x16/blog_blue.png
Binary files differ
interface/web/themes/default-304/icons/x16/blogs.png
Binary files differ
interface/web/themes/default-304/icons/x16/blogs_arrow.png
Binary files differ
interface/web/themes/default-304/icons/x16/blogs_exclamation.png
Binary files differ
interface/web/themes/default-304/icons/x16/blogs_minus.png
Binary files differ
interface/web/themes/default-304/icons/x16/blogs_pencil.png
Binary files differ
interface/web/themes/default-304/icons/x16/blogs_plus.png
Binary files differ
interface/web/themes/default-304/icons/x16/blogs_stack.png
Binary files differ
interface/web/themes/default-304/icons/x16/book.png
Binary files differ
interface/web/themes/default-304/icons/x16/book__arrow.png
Binary files differ
interface/web/themes/default-304/icons/x16/book__exclamation.png
Binary files differ
interface/web/themes/default-304/icons/x16/book__minus.png
Binary files differ
interface/web/themes/default-304/icons/x16/book__pencil.png
Binary files differ
interface/web/themes/default-304/icons/x16/book__plus.png
Binary files differ
interface/web/themes/default-304/icons/x16/book_brown.png
Binary files differ
interface/web/themes/default-304/icons/x16/book_small.png
Binary files differ
interface/web/themes/default-304/icons/x16/book_small_brown.png
Binary files differ
interface/web/themes/default-304/icons/x16/bookmark.png
Binary files differ
interface/web/themes/default-304/icons/x16/bookmark__arrow.png
Binary files differ
interface/web/themes/default-304/icons/x16/bookmark__exclamation.png
Binary files differ
interface/web/themes/default-304/icons/x16/bookmark__minus.png
Binary files differ
interface/web/themes/default-304/icons/x16/bookmark__pencil.png
Binary files differ
interface/web/themes/default-304/icons/x16/bookmark__plus.png
Binary files differ
interface/web/themes/default-304/icons/x16/bookmark__small.png
Binary files differ
interface/web/themes/default-304/icons/x16/bookmark_book.png
Binary files differ
interface/web/themes/default-304/icons/x16/bookmark_book_arrow.png
Binary files differ
interface/web/themes/default-304/icons/x16/bookmark_book_exclamation.png
Binary files differ
interface/web/themes/default-304/icons/x16/bookmark_book_minus.png
Binary files differ
interface/web/themes/default-304/icons/x16/bookmark_book_pencil.png
Binary files differ
interface/web/themes/default-304/icons/x16/bookmark_book_plus.png
Binary files differ
interface/web/themes/default-304/icons/x16/bookmark_document.png
Binary files differ
interface/web/themes/default-304/icons/x16/bookmark_document_arrow.png
Binary files differ
interface/web/themes/default-304/icons/x16/bookmark_document_exclamation.png
Binary files differ
interface/web/themes/default-304/icons/x16/bookmark_document_minus.png
Binary files differ
interface/web/themes/default-304/icons/x16/bookmark_document_pencil.png
Binary files differ
interface/web/themes/default-304/icons/x16/bookmark_document_plus.png
Binary files differ
interface/web/themes/default-304/icons/x16/bookmark_folder.png
Binary files differ
interface/web/themes/default-304/icons/x16/bookmark_folder_arrow.png
Binary files differ
interface/web/themes/default-304/icons/x16/bookmark_folder_exclamation.png
Binary files differ
interface/web/themes/default-304/icons/x16/bookmark_folder_minus.png
Binary files differ
interface/web/themes/default-304/icons/x16/bookmark_folder_pencil.png
Binary files differ
interface/web/themes/default-304/icons/x16/bookmark_folder_plus.png
Binary files differ
interface/web/themes/default-304/icons/x16/books.png
Binary files differ
interface/web/themes/default-304/icons/x16/books__arrow.png
Binary files differ
interface/web/themes/default-304/icons/x16/books__exclamation.png
Binary files differ
interface/web/themes/default-304/icons/x16/books__minus.png
Binary files differ
interface/web/themes/default-304/icons/x16/books__pencil.png
Binary files differ
interface/web/themes/default-304/icons/x16/books__plus.png
Binary files differ
interface/web/themes/default-304/icons/x16/books_brown.png
Binary files differ
interface/web/themes/default-304/icons/x16/books_stack.png
Binary files differ
interface/web/themes/default-304/icons/x16/box.png
Binary files differ
interface/web/themes/default-304/icons/x16/box__arrow.png
Binary files differ
interface/web/themes/default-304/icons/x16/box__exclamation.png
Binary files differ
interface/web/themes/default-304/icons/x16/box__minus.png
Binary files differ
interface/web/themes/default-304/icons/x16/box__pencil.png
Binary files differ
interface/web/themes/default-304/icons/x16/box__plus.png
Binary files differ
interface/web/themes/default-304/icons/x16/box_label.png
Binary files differ
interface/web/themes/default-304/icons/x16/briefcase.png
Binary files differ
interface/web/themes/default-304/icons/x16/briefcase_arrow.png
Binary files differ
interface/web/themes/default-304/icons/x16/briefcase_exclamation.png
Binary files differ
interface/web/themes/default-304/icons/x16/briefcase_minus.png
Binary files differ
interface/web/themes/default-304/icons/x16/briefcase_pencil.png
Binary files differ
interface/web/themes/default-304/icons/x16/briefcase_plus.png
Binary files differ
interface/web/themes/default-304/icons/x16/broom.png
Binary files differ
interface/web/themes/default-304/icons/x16/broom_arrow.png
Binary files differ
interface/web/themes/default-304/icons/x16/broom_exclamation.png
Binary files differ
interface/web/themes/default-304/icons/x16/broom_minus.png
Binary files differ
interface/web/themes/default-304/icons/x16/broom_pencil.png
Binary files differ
interface/web/themes/default-304/icons/x16/broom_plus.png
Binary files differ
interface/web/themes/default-304/icons/x16/calculator.png
Binary files differ
interface/web/themes/default-304/icons/x16/calculator_arrow.png
Binary files differ
interface/web/themes/default-304/icons/x16/calculator_exclamation.png
Binary files differ
interface/web/themes/default-304/icons/x16/calculator_minus.png
Binary files differ
interface/web/themes/default-304/icons/x16/calculator_pencil.png
Binary files differ
interface/web/themes/default-304/icons/x16/calculator_plus.png
Binary files differ
interface/web/themes/default-304/icons/x16/calendar.png
Binary files differ
interface/web/themes/default-304/icons/x16/calendar__arrow.png
Binary files differ
interface/web/themes/default-304/icons/x16/calendar__exclamation.png
Binary files differ
interface/web/themes/default-304/icons/x16/calendar__minus.png
Binary files differ
interface/web/themes/default-304/icons/x16/calendar__pencil.png
Binary files differ
interface/web/themes/default-304/icons/x16/calendar__plus.png
Binary files differ
interface/web/themes/default-304/icons/x16/calendar_day.png
Binary files differ
interface/web/themes/default-304/icons/x16/calendar_month.png
Binary files differ
interface/web/themes/default-304/icons/x16/camera.png
Binary files differ
interface/web/themes/default-304/icons/x16/camera__arrow.png
Binary files differ
interface/web/themes/default-304/icons/x16/camera__exclamation.png
Binary files differ
interface/web/themes/default-304/icons/x16/camera__minus.png
Binary files differ
interface/web/themes/default-304/icons/x16/camera__pencil.png
Binary files differ
interface/web/themes/default-304/icons/x16/camera__plus.png
Binary files differ
interface/web/themes/default-304/icons/x16/camera_black.png
Binary files differ
interface/web/themes/default-304/icons/x16/camera_small.png
Binary files differ
interface/web/themes/default-304/icons/x16/camera_small_black.png
Binary files differ
interface/web/themes/default-304/icons/x16/card.png
Binary files differ
interface/web/themes/default-304/icons/x16/card__arrow.png
Binary files differ
interface/web/themes/default-304/icons/x16/card__exclamation.png
Binary files differ
interface/web/themes/default-304/icons/x16/card__minus.png
Binary files differ
interface/web/themes/default-304/icons/x16/card__pencil.png
Binary files differ
interface/web/themes/default-304/icons/x16/card__plus.png
Binary files differ
interface/web/themes/default-304/icons/x16/card_address.png
Binary files differ
interface/web/themes/default-304/icons/x16/card_small.png
Binary files differ
interface/web/themes/default-304/icons/x16/cards.png
Binary files differ
interface/web/themes/default-304/icons/x16/cards__arrow.png
Binary files differ
interface/web/themes/default-304/icons/x16/cards__exclamation.png
Binary files differ
interface/web/themes/default-304/icons/x16/cards__minus.png
Binary files differ
interface/web/themes/default-304/icons/x16/cards__pencil.png
Binary files differ
interface/web/themes/default-304/icons/x16/cards__plus.png
Binary files differ
interface/web/themes/default-304/icons/x16/cards_address.png
Binary files differ
interface/web/themes/default-304/icons/x16/cards_stack.png
Binary files differ
interface/web/themes/default-304/icons/x16/cassette.png
Binary files differ
interface/web/themes/default-304/icons/x16/cassette_arrow.png
Binary files differ
interface/web/themes/default-304/icons/x16/cassette_exclamation.png
Binary files differ
interface/web/themes/default-304/icons/x16/cassette_minus.png
Binary files differ
interface/web/themes/default-304/icons/x16/cassette_pencil.png
Binary files differ
interface/web/themes/default-304/icons/x16/cassette_plus.png
Binary files differ
interface/web/themes/default-304/icons/x16/cassette_small.png
Binary files differ
interface/web/themes/default-304/icons/x16/chain.png
Binary files differ
interface/web/themes/default-304/icons/x16/chain_arrow.png
Binary files differ
interface/web/themes/default-304/icons/x16/chain_exclamation.png
Binary files differ
interface/web/themes/default-304/icons/x16/chain_minus.png
Binary files differ
interface/web/themes/default-304/icons/x16/chain_pencil.png
Binary files differ
interface/web/themes/default-304/icons/x16/chain_plus.png
Binary files differ
interface/web/themes/default-304/icons/x16/chain_small.png
Binary files differ
interface/web/themes/default-304/icons/x16/chain_unchain.png
Binary files differ
interface/web/themes/default-304/icons/x16/clipboard.png
Binary files differ
interface/web/themes/default-304/icons/x16/clipboard__arrow.png
Binary files differ
interface/web/themes/default-304/icons/x16/clipboard__exclamation.png
Binary files differ
interface/web/themes/default-304/icons/x16/clipboard__minus.png
Binary files differ
interface/web/themes/default-304/icons/x16/clipboard__pencil.png
Binary files differ
interface/web/themes/default-304/icons/x16/clipboard__plus.png
Binary files differ
interface/web/themes/default-304/icons/x16/clipboard_empty.png
Binary files differ
interface/web/themes/default-304/icons/x16/clipboard_text.png
Binary files differ
interface/web/themes/default-304/icons/x16/clock.png
Binary files differ
interface/web/themes/default-304/icons/x16/clock__arrow.png
Binary files differ
interface/web/themes/default-304/icons/x16/clock__exclamation.png
Binary files differ
interface/web/themes/default-304/icons/x16/clock__minus.png
Binary files differ
interface/web/themes/default-304/icons/x16/clock__pencil.png
Binary files differ
interface/web/themes/default-304/icons/x16/clock__plus.png
Binary files differ
interface/web/themes/default-304/icons/x16/clock_fill.png
Binary files differ
interface/web/themes/default-304/icons/x16/clock_frame.png
Binary files differ
interface/web/themes/default-304/icons/x16/clock_small.png
Binary files differ
interface/web/themes/default-304/icons/x16/color.png
Binary files differ
interface/web/themes/default-304/icons/x16/color_arrow.png
Binary files differ
interface/web/themes/default-304/icons/x16/color_exclamation.png
Binary files differ
interface/web/themes/default-304/icons/x16/color_minus.png
Binary files differ
interface/web/themes/default-304/icons/x16/color_pencil.png
Binary files differ
interface/web/themes/default-304/icons/x16/color_plus.png
Binary files differ
interface/web/themes/default-304/icons/x16/color_small.png
Binary files differ
interface/web/themes/default-304/icons/x16/contrast.png
Binary files differ
interface/web/themes/default-304/icons/x16/contrast__arrow.png
Binary files differ
interface/web/themes/default-304/icons/x16/contrast__exclamation.png
Binary files differ
interface/web/themes/default-304/icons/x16/contrast__minus.png
Binary files differ
interface/web/themes/default-304/icons/x16/contrast__pencil.png
Binary files differ
interface/web/themes/default-304/icons/x16/contrast__plus.png
Binary files differ
interface/web/themes/default-304/icons/x16/contrast_low.png
Binary files differ
interface/web/themes/default-304/icons/x16/contrast_small.png
Binary files differ
interface/web/themes/default-304/icons/x16/contrast_small_low.png
Binary files differ
interface/web/themes/default-304/icons/x16/cross.png
Binary files differ
interface/web/themes/default-304/icons/x16/cross_circle.png
Binary files differ
interface/web/themes/default-304/icons/x16/cross_circle_frame.png
Binary files differ
interface/web/themes/default-304/icons/x16/cross_shield.png
Binary files differ
interface/web/themes/default-304/icons/x16/cross_small.png
Binary files differ
interface/web/themes/default-304/icons/x16/cross_small_circle.png
Binary files differ
interface/web/themes/default-304/icons/x16/crown.png
Binary files differ
interface/web/themes/default-304/icons/x16/crown__arrow.png
Binary files differ
interface/web/themes/default-304/icons/x16/crown__exclamation.png
Binary files differ
interface/web/themes/default-304/icons/x16/crown__minus.png
Binary files differ
interface/web/themes/default-304/icons/x16/crown__pencil.png
Binary files differ
interface/web/themes/default-304/icons/x16/crown__plus.png
Binary files differ
interface/web/themes/default-304/icons/x16/crown_bronze.png
Binary files differ
interface/web/themes/default-304/icons/x16/crown_silver.png
Binary files differ
interface/web/themes/default-304/icons/x16/database.png
Binary files differ
interface/web/themes/default-304/icons/x16/database_arrow.png
Binary files differ
interface/web/themes/default-304/icons/x16/database_exclamation.png
Binary files differ
interface/web/themes/default-304/icons/x16/database_minus.png
Binary files differ
interface/web/themes/default-304/icons/x16/database_pencil.png
Binary files differ
interface/web/themes/default-304/icons/x16/database_plus.png
Binary files differ
interface/web/themes/default-304/icons/x16/database_small.png
Binary files differ
interface/web/themes/default-304/icons/x16/databases.png
Binary files differ
interface/web/themes/default-304/icons/x16/databases_arrow.png
Binary files differ
interface/web/themes/default-304/icons/x16/databases_exclamation.png
Binary files differ
interface/web/themes/default-304/icons/x16/databases_minus.png
Binary files differ
interface/web/themes/default-304/icons/x16/databases_pencil.png
Binary files differ
interface/web/themes/default-304/icons/x16/databases_plus.png
Binary files differ
interface/web/themes/default-304/icons/x16/disc.png
Binary files differ
interface/web/themes/default-304/icons/x16/disc_arrow.png
Binary files differ
interface/web/themes/default-304/icons/x16/disc_exclamation.png
Binary files differ
interface/web/themes/default-304/icons/x16/disc_minus.png
Binary files differ
interface/web/themes/default-304/icons/x16/disc_pencil.png
Binary files differ
interface/web/themes/default-304/icons/x16/disc_plus.png
Binary files differ
interface/web/themes/default-304/icons/x16/disc_small.png
Binary files differ
interface/web/themes/default-304/icons/x16/discs.png
Binary files differ
interface/web/themes/default-304/icons/x16/discs_arrow.png
Binary files differ
interface/web/themes/default-304/icons/x16/discs_exclamation.png
Binary files differ
interface/web/themes/default-304/icons/x16/discs_minus.png
Binary files differ
interface/web/themes/default-304/icons/x16/discs_pencil.png
Binary files differ
interface/web/themes/default-304/icons/x16/discs_plus.png
Binary files differ
interface/web/themes/default-304/icons/x16/disk.png
Binary files differ
interface/web/themes/default-304/icons/x16/disk__arrow.png
Binary files differ
interface/web/themes/default-304/icons/x16/disk__exclamation.png
Binary files differ
interface/web/themes/default-304/icons/x16/disk__minus.png
Binary files differ
interface/web/themes/default-304/icons/x16/disk__pencil.png
Binary files differ
interface/web/themes/default-304/icons/x16/disk__plus.png
Binary files differ
interface/web/themes/default-304/icons/x16/disk_black.png
Binary files differ
interface/web/themes/default-304/icons/x16/disk_small.png
Binary files differ
interface/web/themes/default-304/icons/x16/disk_small_black.png
Binary files differ
interface/web/themes/default-304/icons/x16/disks.png
Binary files differ
interface/web/themes/default-304/icons/x16/disks__arrow.png
Binary files differ
interface/web/themes/default-304/icons/x16/disks__exclamation.png
Binary files differ
interface/web/themes/default-304/icons/x16/disks__minus.png
Binary files differ
interface/web/themes/default-304/icons/x16/disks__pencil.png
Binary files differ
interface/web/themes/default-304/icons/x16/disks__plus.png
Binary files differ
interface/web/themes/default-304/icons/x16/disks_black.png
Binary files differ
interface/web/themes/default-304/icons/x16/document.png
Binary files differ
interface/web/themes/default-304/icons/x16/document__arrow.png
Binary files differ
interface/web/themes/default-304/icons/x16/document__exclamation.png
Binary files differ
interface/web/themes/default-304/icons/x16/document__minus.png
Binary files differ
interface/web/themes/default-304/icons/x16/document__pencil.png
Binary files differ
interface/web/themes/default-304/icons/x16/document__plus.png
Binary files differ
interface/web/themes/default-304/icons/x16/document_horizontal.png
Binary files differ
interface/web/themes/default-304/icons/x16/document_horizontal_text.png
Binary files differ
interface/web/themes/default-304/icons/x16/document_music.png
Binary files differ
interface/web/themes/default-304/icons/x16/document_music_playlist.png
Binary files differ
interface/web/themes/default-304/icons/x16/document_shred.png
Binary files differ
interface/web/themes/default-304/icons/x16/document_small.png
Binary files differ
interface/web/themes/default-304/icons/x16/document_text.png
Binary files differ
interface/web/themes/default-304/icons/x16/document_text_image.png
Binary files differ
interface/web/themes/default-304/icons/x16/document_zipper.png
Binary files differ
interface/web/themes/default-304/icons/x16/documents.png
Binary files differ
interface/web/themes/default-304/icons/x16/documents_arrow.png
Binary files differ
interface/web/themes/default-304/icons/x16/documents_exclamation.png
Binary files differ
interface/web/themes/default-304/icons/x16/documents_minus.png
Binary files differ
interface/web/themes/default-304/icons/x16/documents_pencil.png
Binary files differ
interface/web/themes/default-304/icons/x16/documents_plus.png
Binary files differ
interface/web/themes/default-304/icons/x16/documents_stack.png
Binary files differ
interface/web/themes/default-304/icons/x16/documents_text.png
Binary files differ
interface/web/themes/default-304/icons/x16/door.png
Binary files differ
interface/web/themes/default-304/icons/x16/door_arrow.png
Binary files differ
interface/web/themes/default-304/icons/x16/door_exclamation.png
Binary files differ
interface/web/themes/default-304/icons/x16/door_minus.png
Binary files differ
interface/web/themes/default-304/icons/x16/door_pencil.png
Binary files differ
interface/web/themes/default-304/icons/x16/door_plus.png
Binary files differ
interface/web/themes/default-304/icons/x16/drawer.png
Binary files differ
interface/web/themes/default-304/icons/x16/drawer_arrow.png
Binary files differ
interface/web/themes/default-304/icons/x16/drawer_exclamation.png
Binary files differ
interface/web/themes/default-304/icons/x16/drawer_minus.png
Binary files differ
interface/web/themes/default-304/icons/x16/drawer_pencil.png
Binary files differ
interface/web/themes/default-304/icons/x16/drawer_plus.png
Binary files differ
interface/web/themes/default-304/icons/x16/drill.png
Binary files differ
interface/web/themes/default-304/icons/x16/drill_arrow.png
Binary files differ
interface/web/themes/default-304/icons/x16/drill_exclamation.png
Binary files differ
interface/web/themes/default-304/icons/x16/drill_minus.png
Binary files differ
interface/web/themes/default-304/icons/x16/drill_pencil.png
Binary files differ
interface/web/themes/default-304/icons/x16/drill_plus.png
Binary files differ
interface/web/themes/default-304/icons/x16/envelope.png
Binary files differ
interface/web/themes/default-304/icons/x16/envelope_arrow.png
Binary files differ
interface/web/themes/default-304/icons/x16/envelope_exclamation.png
Binary files differ
interface/web/themes/default-304/icons/x16/envelope_minus.png
Binary files differ
interface/web/themes/default-304/icons/x16/envelope_pencil.png
Binary files differ
interface/web/themes/default-304/icons/x16/envelope_plus.png
Binary files differ
interface/web/themes/default-304/icons/x16/equalizer.png
Binary files differ
interface/web/themes/default-304/icons/x16/equalizer_arrow.png
Binary files differ
interface/web/themes/default-304/icons/x16/equalizer_exclamation.png
Binary files differ
interface/web/themes/default-304/icons/x16/equalizer_minus.png
Binary files differ
interface/web/themes/default-304/icons/x16/equalizer_pencil.png
Binary files differ
interface/web/themes/default-304/icons/x16/equalizer_plus.png
Binary files differ
interface/web/themes/default-304/icons/x16/eraser.png
Binary files differ
interface/web/themes/default-304/icons/x16/eraser_arrow.png
Binary files differ
interface/web/themes/default-304/icons/x16/eraser_exclamation.png
Binary files differ
interface/web/themes/default-304/icons/x16/eraser_minus.png
Binary files differ
interface/web/themes/default-304/icons/x16/eraser_pencil.png
Binary files differ
interface/web/themes/default-304/icons/x16/eraser_plus.png
Binary files differ
interface/web/themes/default-304/icons/x16/exclamation.png
Binary files differ
interface/web/themes/default-304/icons/x16/exclamation_frame.png
Binary files differ
interface/web/themes/default-304/icons/x16/exclamation_shield.png
Binary files differ
interface/web/themes/default-304/icons/x16/exclamation_small.png
Binary files differ
interface/web/themes/default-304/icons/x16/feed.png
Binary files differ
interface/web/themes/default-304/icons/x16/feed__arrow.png
Binary files differ
interface/web/themes/default-304/icons/x16/feed__exclamation.png
Binary files differ
interface/web/themes/default-304/icons/x16/feed__minus.png
Binary files differ
interface/web/themes/default-304/icons/x16/feed__pencil.png
Binary files differ
interface/web/themes/default-304/icons/x16/feed__plus.png
Binary files differ
interface/web/themes/default-304/icons/x16/feed_balloon.png
Binary files differ
interface/web/themes/default-304/icons/x16/feed_small.png
Binary files differ
interface/web/themes/default-304/icons/x16/film.png
Binary files differ
interface/web/themes/default-304/icons/x16/film_arrow.png
Binary files differ
interface/web/themes/default-304/icons/x16/film_exclamation.png
Binary files differ
interface/web/themes/default-304/icons/x16/film_minus.png
Binary files differ
interface/web/themes/default-304/icons/x16/film_pencil.png
Binary files differ
interface/web/themes/default-304/icons/x16/film_plus.png
Binary files differ
interface/web/themes/default-304/icons/x16/film_small.png
Binary files differ
interface/web/themes/default-304/icons/x16/films.png
Binary files differ
interface/web/themes/default-304/icons/x16/films_arrow.png
Binary files differ
interface/web/themes/default-304/icons/x16/films_exclamation.png
Binary files differ
interface/web/themes/default-304/icons/x16/films_minus.png
Binary files differ
interface/web/themes/default-304/icons/x16/films_pencil.png
Binary files differ
interface/web/themes/default-304/icons/x16/films_plus.png
Binary files differ
interface/web/themes/default-304/icons/x16/flag.png
Binary files differ
interface/web/themes/default-304/icons/x16/flag_arrow.png
Binary files differ
interface/web/themes/default-304/icons/x16/flag_exclamation.png
Binary files differ
interface/web/themes/default-304/icons/x16/flag_minus.png
Binary files differ
interface/web/themes/default-304/icons/x16/flag_pencil.png
Binary files differ
interface/web/themes/default-304/icons/x16/flag_plus.png
Binary files differ
interface/web/themes/default-304/icons/x16/folder.png
Binary files differ
interface/web/themes/default-304/icons/x16/folder__arrow.png
Binary files differ
interface/web/themes/default-304/icons/x16/folder__exclamation.png
Binary files differ
interface/web/themes/default-304/icons/x16/folder__minus.png
Binary files differ
interface/web/themes/default-304/icons/x16/folder__pencil.png
Binary files differ
interface/web/themes/default-304/icons/x16/folder__plus.png
Binary files differ
interface/web/themes/default-304/icons/x16/folder_open.png
Binary files differ
interface/web/themes/default-304/icons/x16/folder_open_document.png
Binary files differ
interface/web/themes/default-304/icons/x16/folder_open_document_music.png
Binary files differ
interface/web/themes/default-304/icons/x16/folder_open_document_music_playlist.png
Binary files differ
interface/web/themes/default-304/icons/x16/folder_open_document_text.png
Binary files differ
interface/web/themes/default-304/icons/x16/folder_open_film.png
Binary files differ
interface/web/themes/default-304/icons/x16/folder_open_image.png
Binary files differ
interface/web/themes/default-304/icons/x16/folder_shred.png
Binary files differ
interface/web/themes/default-304/icons/x16/folder_small.png
Binary files differ
interface/web/themes/default-304/icons/x16/folder_zipper.png
Binary files differ
interface/web/themes/default-304/icons/x16/folders.png
Binary files differ
interface/web/themes/default-304/icons/x16/folders_arrow.png
Binary files differ
interface/web/themes/default-304/icons/x16/folders_exclamation.png
Binary files differ
interface/web/themes/default-304/icons/x16/folders_minus.png
Binary files differ
interface/web/themes/default-304/icons/x16/folders_pencil.png
Binary files differ
interface/web/themes/default-304/icons/x16/folders_plus.png
Binary files differ
interface/web/themes/default-304/icons/x16/folders_stack.png
Binary files differ
interface/web/themes/default-304/icons/x16/funnel.png
Binary files differ
interface/web/themes/default-304/icons/x16/funnel_arrow.png
Binary files differ
interface/web/themes/default-304/icons/x16/funnel_exclamation.png
Binary files differ
interface/web/themes/default-304/icons/x16/funnel_minus.png
Binary files differ
interface/web/themes/default-304/icons/x16/funnel_pencil.png
Binary files differ
interface/web/themes/default-304/icons/x16/funnel_plus.png
Binary files differ
interface/web/themes/default-304/icons/x16/funnel_small.png
Binary files differ
interface/web/themes/default-304/icons/x16/gear.png
Binary files differ
interface/web/themes/default-304/icons/x16/gear__arrow.png
Binary files differ
interface/web/themes/default-304/icons/x16/gear__exclamation.png
Binary files differ
interface/web/themes/default-304/icons/x16/gear__minus.png
Binary files differ
interface/web/themes/default-304/icons/x16/gear__pencil.png
Binary files differ
interface/web/themes/default-304/icons/x16/gear__plus.png
Binary files differ
interface/web/themes/default-304/icons/x16/gear_disable.png
Binary files differ
interface/web/themes/default-304/icons/x16/gear_small.png
Binary files differ
interface/web/themes/default-304/icons/x16/hammer.png
Binary files differ
interface/web/themes/default-304/icons/x16/hammer__arrow.png
Binary files differ
interface/web/themes/default-304/icons/x16/hammer__exclamation.png
Binary files differ
interface/web/themes/default-304/icons/x16/hammer__minus.png
Binary files differ
interface/web/themes/default-304/icons/x16/hammer__pencil.png
Binary files differ
interface/web/themes/default-304/icons/x16/hammer__plus.png
Binary files differ
interface/web/themes/default-304/icons/x16/hammer_left.png
Binary files differ
interface/web/themes/default-304/icons/x16/hammer_screwdriver.png
Binary files differ
interface/web/themes/default-304/icons/x16/heart.png
Binary files differ
interface/web/themes/default-304/icons/x16/heart__arrow.png
Binary files differ
interface/web/themes/default-304/icons/x16/heart__exclamation.png
Binary files differ
interface/web/themes/default-304/icons/x16/heart__minus.png
Binary files differ
interface/web/themes/default-304/icons/x16/heart__pencil.png
Binary files differ
interface/web/themes/default-304/icons/x16/heart__plus.png
Binary files differ
interface/web/themes/default-304/icons/x16/heart_break.png
Binary files differ
interface/web/themes/default-304/icons/x16/heart_empty.png
Binary files differ
interface/web/themes/default-304/icons/x16/heart_half.png
Binary files differ
interface/web/themes/default-304/icons/x16/heart_small.png
Binary files differ
interface/web/themes/default-304/icons/x16/heart_small_empty.png
Binary files differ
interface/web/themes/default-304/icons/x16/heart_small_half.png
Binary files differ
interface/web/themes/default-304/icons/x16/home.png
Binary files differ
interface/web/themes/default-304/icons/x16/home_arrow.png
Binary files differ
interface/web/themes/default-304/icons/x16/home_exclamation.png
Binary files differ
interface/web/themes/default-304/icons/x16/home_minus.png
Binary files differ
interface/web/themes/default-304/icons/x16/home_pencil.png
Binary files differ
interface/web/themes/default-304/icons/x16/home_plus.png
Binary files differ
interface/web/themes/default-304/icons/x16/home_small.png
Binary files differ
interface/web/themes/default-304/icons/x16/image.png
Binary files differ
interface/web/themes/default-304/icons/x16/image_arrow.png
Binary files differ
interface/web/themes/default-304/icons/x16/image_exclamation.png
Binary files differ
interface/web/themes/default-304/icons/x16/image_minus.png
Binary files differ
interface/web/themes/default-304/icons/x16/image_pencil.png
Binary files differ
interface/web/themes/default-304/icons/x16/image_plus.png
Binary files differ
interface/web/themes/default-304/icons/x16/image_resize.png
Binary files differ
interface/web/themes/default-304/icons/x16/image_resize_actual.png
Binary files differ
interface/web/themes/default-304/icons/x16/image_small.png
Binary files differ
interface/web/themes/default-304/icons/x16/image_small_sunset.png
Binary files differ
interface/web/themes/default-304/icons/x16/image_sunset.png
Binary files differ
interface/web/themes/default-304/icons/x16/images.png
Binary files differ
interface/web/themes/default-304/icons/x16/images_arrow.png
Binary files differ
interface/web/themes/default-304/icons/x16/images_exclamation.png
Binary files differ
interface/web/themes/default-304/icons/x16/images_minus.png
Binary files differ
interface/web/themes/default-304/icons/x16/images_pencil.png
Binary files differ
interface/web/themes/default-304/icons/x16/images_plus.png
Binary files differ
interface/web/themes/default-304/icons/x16/images_stack.png
Binary files differ
interface/web/themes/default-304/icons/x16/inbox.png
Binary files differ
interface/web/themes/default-304/icons/x16/inbox_arrow.png
Binary files differ
interface/web/themes/default-304/icons/x16/inbox_exclamation.png
Binary files differ
interface/web/themes/default-304/icons/x16/inbox_minus.png
Binary files differ
interface/web/themes/default-304/icons/x16/inbox_pencil.png
Binary files differ
interface/web/themes/default-304/icons/x16/inbox_plus.png
Binary files differ
interface/web/themes/default-304/icons/x16/information.png
Binary files differ
interface/web/themes/default-304/icons/x16/information_frame.png
Binary files differ
interface/web/themes/default-304/icons/x16/information_shield.png
Binary files differ
interface/web/themes/default-304/icons/x16/information_small.png
Binary files differ
interface/web/themes/default-304/icons/x16/key.png
Binary files differ
interface/web/themes/default-304/icons/x16/key__arrow.png
Binary files differ
interface/web/themes/default-304/icons/x16/key__exclamation.png
Binary files differ
interface/web/themes/default-304/icons/x16/key__minus.png
Binary files differ
interface/web/themes/default-304/icons/x16/key__pencil.png
Binary files differ
interface/web/themes/default-304/icons/x16/key__plus.png
Binary files differ
interface/web/themes/default-304/icons/x16/key_disable.png
Binary files differ
interface/web/themes/default-304/icons/x16/layout.png
Binary files differ
interface/web/themes/default-304/icons/x16/layout_2.png
Binary files differ
interface/web/themes/default-304/icons/x16/layout_2_equal.png
Binary files differ
interface/web/themes/default-304/icons/x16/layout_3.png
Binary files differ
interface/web/themes/default-304/icons/x16/layout_3_mix.png
Binary files differ
interface/web/themes/default-304/icons/x16/layout_header.png
Binary files differ
interface/web/themes/default-304/icons/x16/layout_header_2.png
Binary files differ
interface/web/themes/default-304/icons/x16/layout_header_2_equal.png
Binary files differ
interface/web/themes/default-304/icons/x16/layout_header_3.png
Binary files differ
interface/web/themes/default-304/icons/x16/layout_header_3_mix.png
Binary files differ
interface/web/themes/default-304/icons/x16/layout_header_footer.png
Binary files differ
interface/web/themes/default-304/icons/x16/layout_header_footer_2.png
Binary files differ
interface/web/themes/default-304/icons/x16/layout_header_footer_2_equal.png
Binary files differ
interface/web/themes/default-304/icons/x16/layout_header_footer_3.png
Binary files differ
interface/web/themes/default-304/icons/x16/layout_header_footer_3_mix.png
Binary files differ
interface/web/themes/default-304/icons/x16/layout_join.png
Binary files differ
interface/web/themes/default-304/icons/x16/layout_split.png
Binary files differ
interface/web/themes/default-304/icons/x16/lifebuoy.png
Binary files differ
interface/web/themes/default-304/icons/x16/lifebuoy_arrow.png
Binary files differ
interface/web/themes/default-304/icons/x16/lifebuoy_exclamation.png
Binary files differ
interface/web/themes/default-304/icons/x16/lifebuoy_minus.png
Binary files differ
interface/web/themes/default-304/icons/x16/lifebuoy_pencil.png
Binary files differ
interface/web/themes/default-304/icons/x16/lifebuoy_plus.png
Binary files differ
interface/web/themes/default-304/icons/x16/light_bulb.png
Binary files differ
interface/web/themes/default-304/icons/x16/light_bulb__arrow.png
Binary files differ
interface/web/themes/default-304/icons/x16/light_bulb__exclamation.png
Binary files differ
interface/web/themes/default-304/icons/x16/light_bulb__minus.png
Binary files differ
interface/web/themes/default-304/icons/x16/light_bulb__pencil.png
Binary files differ
interface/web/themes/default-304/icons/x16/light_bulb__plus.png
Binary files differ
interface/web/themes/default-304/icons/x16/light_bulb_off.png
Binary files differ
interface/web/themes/default-304/icons/x16/light_bulb_small.png
Binary files differ
interface/web/themes/default-304/icons/x16/light_bulb_small_off.png
Binary files differ
interface/web/themes/default-304/icons/x16/lightning.png
Binary files differ
interface/web/themes/default-304/icons/x16/lightning__arrow.png
Binary files differ
interface/web/themes/default-304/icons/x16/lightning__exclamation.png
Binary files differ
interface/web/themes/default-304/icons/x16/lightning__minus.png
Binary files differ
interface/web/themes/default-304/icons/x16/lightning__pencil.png
Binary files differ
interface/web/themes/default-304/icons/x16/lightning__plus.png
Binary files differ
interface/web/themes/default-304/icons/x16/lightning_disable.png
Binary files differ
interface/web/themes/default-304/icons/x16/lightning_small.png
Binary files differ
interface/web/themes/default-304/icons/x16/loading.gif
Binary files differ
interface/web/themes/default-304/icons/x16/lock.png
Binary files differ
interface/web/themes/default-304/icons/x16/lock__arrow.png
Binary files differ
interface/web/themes/default-304/icons/x16/lock__exclamation.png
Binary files differ
interface/web/themes/default-304/icons/x16/lock__minus.png
Binary files differ
interface/web/themes/default-304/icons/x16/lock__pencil.png
Binary files differ
interface/web/themes/default-304/icons/x16/lock__plus.png
Binary files differ
interface/web/themes/default-304/icons/x16/lock_disable.png
Binary files differ
interface/web/themes/default-304/icons/x16/lock_small.png
Binary files differ
interface/web/themes/default-304/icons/x16/lock_unlock.png
Binary files differ
interface/web/themes/default-304/icons/x16/logout.png
Binary files differ
interface/web/themes/default-304/icons/x16/magnet.png
Binary files differ
interface/web/themes/default-304/icons/x16/magnet__arrow.png
Binary files differ
interface/web/themes/default-304/icons/x16/magnet__exclamation.png
Binary files differ
interface/web/themes/default-304/icons/x16/magnet__minus.png
Binary files differ
interface/web/themes/default-304/icons/x16/magnet__pencil.png
Binary files differ
interface/web/themes/default-304/icons/x16/magnet__plus.png
Binary files differ
interface/web/themes/default-304/icons/x16/magnet_disable.png
Binary files differ
interface/web/themes/default-304/icons/x16/magnet_small.png
Binary files differ
interface/web/themes/default-304/icons/x16/magnifier.png
Binary files differ
interface/web/themes/default-304/icons/x16/magnifier__arrow.png
Binary files differ
interface/web/themes/default-304/icons/x16/magnifier__exclamation.png
Binary files differ
interface/web/themes/default-304/icons/x16/magnifier__minus.png
Binary files differ
interface/web/themes/default-304/icons/x16/magnifier__pencil.png
Binary files differ
interface/web/themes/default-304/icons/x16/magnifier__plus.png
Binary files differ
interface/web/themes/default-304/icons/x16/magnifier_left.png
Binary files differ
interface/web/themes/default-304/icons/x16/magnifier_medium.png
Binary files differ
interface/web/themes/default-304/icons/x16/magnifier_medium_left.png
Binary files differ
interface/web/themes/default-304/icons/x16/magnifier_small.png
Binary files differ
interface/web/themes/default-304/icons/x16/magnifier_zoom.png
Binary files differ
interface/web/themes/default-304/icons/x16/magnifier_zoom_actual.png
Binary files differ
interface/web/themes/default-304/icons/x16/magnifier_zoom_fit.png
Binary files differ
interface/web/themes/default-304/icons/x16/magnifier_zoom_out.png
Binary files differ
interface/web/themes/default-304/icons/x16/mail.png
Binary files differ
interface/web/themes/default-304/icons/x16/mail__arrow.png
Binary files differ
interface/web/themes/default-304/icons/x16/mail__exclamation.png
Binary files differ
interface/web/themes/default-304/icons/x16/mail__minus.png
Binary files differ
interface/web/themes/default-304/icons/x16/mail__pencil.png
Binary files differ
interface/web/themes/default-304/icons/x16/mail__plus.png
Binary files differ
interface/web/themes/default-304/icons/x16/mail_open.png
Binary files differ
interface/web/themes/default-304/icons/x16/mail_open_document.png
Binary files differ
interface/web/themes/default-304/icons/x16/mail_open_film.png
Binary files differ
interface/web/themes/default-304/icons/x16/mail_open_image.png
Binary files differ
interface/web/themes/default-304/icons/x16/mail_small.png
Binary files differ
interface/web/themes/default-304/icons/x16/mails.png
Binary files differ
interface/web/themes/default-304/icons/x16/mails_arrow.png
Binary files differ
interface/web/themes/default-304/icons/x16/mails_exclamation.png
Binary files differ
interface/web/themes/default-304/icons/x16/mails_minus.png
Binary files differ
interface/web/themes/default-304/icons/x16/mails_pencil.png
Binary files differ
interface/web/themes/default-304/icons/x16/mails_plus.png
Binary files differ
interface/web/themes/default-304/icons/x16/mails_stack.png
Binary files differ
interface/web/themes/default-304/icons/x16/media_player.png
Binary files differ
interface/web/themes/default-304/icons/x16/media_player__arrow.png
Binary files differ
interface/web/themes/default-304/icons/x16/media_player__exclamation.png
Binary files differ
interface/web/themes/default-304/icons/x16/media_player__minus.png
Binary files differ
interface/web/themes/default-304/icons/x16/media_player__pencil.png
Binary files differ
interface/web/themes/default-304/icons/x16/media_player__plus.png
Binary files differ
interface/web/themes/default-304/icons/x16/media_player_black.png
Binary files differ
interface/web/themes/default-304/icons/x16/media_player_medium.png
Binary files differ
interface/web/themes/default-304/icons/x16/media_player_medium_black.png
Binary files differ
interface/web/themes/default-304/icons/x16/media_player_medium_blue.png
Binary files differ
interface/web/themes/default-304/icons/x16/media_player_medium_green.png
Binary files differ
interface/web/themes/default-304/icons/x16/media_player_medium_pink.png
Binary files differ
interface/web/themes/default-304/icons/x16/media_player_medium_red.png
Binary files differ
interface/web/themes/default-304/icons/x16/media_player_small.png
Binary files differ
interface/web/themes/default-304/icons/x16/media_player_small_blue.png
Binary files differ
interface/web/themes/default-304/icons/x16/media_player_small_green.png
Binary files differ
interface/web/themes/default-304/icons/x16/media_player_small_purple.png
Binary files differ
interface/web/themes/default-304/icons/x16/media_player_small_red.png
Binary files differ
interface/web/themes/default-304/icons/x16/media_players.png
Binary files differ
interface/web/themes/default-304/icons/x16/media_players_arrow.png
Binary files differ
interface/web/themes/default-304/icons/x16/media_players_exclamation.png
Binary files differ
interface/web/themes/default-304/icons/x16/media_players_minus.png
Binary files differ
interface/web/themes/default-304/icons/x16/media_players_pencil.png
Binary files differ
interface/web/themes/default-304/icons/x16/media_players_plus.png
Binary files differ
interface/web/themes/default-304/icons/x16/microphone.png
Binary files differ
interface/web/themes/default-304/icons/x16/microphone_arrow.png
Binary files differ
interface/web/themes/default-304/icons/x16/microphone_exclamation.png
Binary files differ
interface/web/themes/default-304/icons/x16/microphone_minus.png
Binary files differ
interface/web/themes/default-304/icons/x16/microphone_pencil.png
Binary files differ
interface/web/themes/default-304/icons/x16/microphone_plus.png
Binary files differ
interface/web/themes/default-304/icons/x16/minus.png
Binary files differ
interface/web/themes/default-304/icons/x16/minus_circle.png
Binary files differ
interface/web/themes/default-304/icons/x16/minus_circle_frame.png
Binary files differ
interface/web/themes/default-304/icons/x16/minus_shield.png
Binary files differ
interface/web/themes/default-304/icons/x16/minus_small.png
Binary files differ
interface/web/themes/default-304/icons/x16/minus_small_circle.png
Binary files differ
interface/web/themes/default-304/icons/x16/music.png
Binary files differ
interface/web/themes/default-304/icons/x16/music_arrow.png
Binary files differ
interface/web/themes/default-304/icons/x16/music_exclamation.png
Binary files differ
interface/web/themes/default-304/icons/x16/music_minus.png
Binary files differ
interface/web/themes/default-304/icons/x16/music_pencil.png
Binary files differ
interface/web/themes/default-304/icons/x16/music_plus.png
Binary files differ
interface/web/themes/default-304/icons/x16/music_small.png
Binary files differ
interface/web/themes/default-304/icons/x16/newspaper.png
Binary files differ
interface/web/themes/default-304/icons/x16/newspaper_arrow.png
Binary files differ
interface/web/themes/default-304/icons/x16/newspaper_exclamation.png
Binary files differ
interface/web/themes/default-304/icons/x16/newspaper_minus.png
Binary files differ
interface/web/themes/default-304/icons/x16/newspaper_pencil.png
Binary files differ
interface/web/themes/default-304/icons/x16/newspaper_plus.png
Binary files differ
interface/web/themes/default-304/icons/x16/newspapers.png
Binary files differ
interface/web/themes/default-304/icons/x16/newspapers_arrow.png
Binary files differ
interface/web/themes/default-304/icons/x16/newspapers_exclamation.png
Binary files differ
interface/web/themes/default-304/icons/x16/newspapers_minus.png
Binary files differ
interface/web/themes/default-304/icons/x16/newspapers_pencil.png
Binary files differ
interface/web/themes/default-304/icons/x16/newspapers_plus.png
Binary files differ
interface/web/themes/default-304/icons/x16/notebook.png
Binary files differ
interface/web/themes/default-304/icons/x16/notebook_arrow.png
Binary files differ
interface/web/themes/default-304/icons/x16/notebook_exclamation.png
Binary files differ
interface/web/themes/default-304/icons/x16/notebook_minus.png
Binary files differ
interface/web/themes/default-304/icons/x16/notebook_pencil.png
Binary files differ
interface/web/themes/default-304/icons/x16/notebook_plus.png
Binary files differ
interface/web/themes/default-304/icons/x16/notebooks.png
Binary files differ
interface/web/themes/default-304/icons/x16/notebooks_arrow.png
Binary files differ
interface/web/themes/default-304/icons/x16/notebooks_exclamation.png
Binary files differ
interface/web/themes/default-304/icons/x16/notebooks_minus.png
Binary files differ
interface/web/themes/default-304/icons/x16/notebooks_pencil.png
Binary files differ
interface/web/themes/default-304/icons/x16/notebooks_plus.png
Binary files differ
interface/web/themes/default-304/icons/x16/paint_can.png
Binary files differ
interface/web/themes/default-304/icons/x16/paint_can_arrow.png
Binary files differ
interface/web/themes/default-304/icons/x16/paint_can_exclamation.png
Binary files differ
interface/web/themes/default-304/icons/x16/paint_can_minus.png
Binary files differ
interface/web/themes/default-304/icons/x16/paint_can_pencil.png
Binary files differ
interface/web/themes/default-304/icons/x16/paint_can_plus.png
Binary files differ
interface/web/themes/default-304/icons/x16/palette.png
Binary files differ
interface/web/themes/default-304/icons/x16/palette_arrow.png
Binary files differ
interface/web/themes/default-304/icons/x16/palette_exclamation.png
Binary files differ
interface/web/themes/default-304/icons/x16/palette_minus.png
Binary files differ
interface/web/themes/default-304/icons/x16/palette_pencil.png
Binary files differ
interface/web/themes/default-304/icons/x16/palette_plus.png
Binary files differ
interface/web/themes/default-304/icons/x16/paper_bag.png
Binary files differ
interface/web/themes/default-304/icons/x16/paper_bag_arrow.png
Binary files differ
interface/web/themes/default-304/icons/x16/paper_bag_exclamation.png
Binary files differ
interface/web/themes/default-304/icons/x16/paper_bag_minus.png
Binary files differ
interface/web/themes/default-304/icons/x16/paper_bag_pencil.png
Binary files differ
interface/web/themes/default-304/icons/x16/paper_bag_plus.png
Binary files differ
interface/web/themes/default-304/icons/x16/pdf.png
Binary files differ
interface/web/themes/default-304/icons/x16/pencil.png
Binary files differ
interface/web/themes/default-304/icons/x16/pencil_arrow.png
Binary files differ
interface/web/themes/default-304/icons/x16/pencil_exclamation.png
Binary files differ
interface/web/themes/default-304/icons/x16/pencil_minus.png
Binary files differ
interface/web/themes/default-304/icons/x16/pencil_plus.png
Binary files differ
interface/web/themes/default-304/icons/x16/pencil_small.png
Binary files differ
interface/web/themes/default-304/icons/x16/photo_album.png
Binary files differ
interface/web/themes/default-304/icons/x16/photo_album__arrow.png
Binary files differ
interface/web/themes/default-304/icons/x16/photo_album__exclamation.png
Binary files differ
interface/web/themes/default-304/icons/x16/photo_album__minus.png
Binary files differ
interface/web/themes/default-304/icons/x16/photo_album__pencil.png
Binary files differ
interface/web/themes/default-304/icons/x16/photo_album__plus.png
Binary files differ
interface/web/themes/default-304/icons/x16/photo_album_blue.png
Binary files differ
interface/web/themes/default-304/icons/x16/piano.png
Binary files differ
interface/web/themes/default-304/icons/x16/piano_arrow.png
Binary files differ
interface/web/themes/default-304/icons/x16/piano_exclamation.png
Binary files differ
interface/web/themes/default-304/icons/x16/piano_minus.png
Binary files differ
interface/web/themes/default-304/icons/x16/piano_pencil.png
Binary files differ
interface/web/themes/default-304/icons/x16/piano_plus.png
Binary files differ
interface/web/themes/default-304/icons/x16/picture.png
Binary files differ
interface/web/themes/default-304/icons/x16/picture_arrow.png
Binary files differ
interface/web/themes/default-304/icons/x16/picture_exclamation.png
Binary files differ
interface/web/themes/default-304/icons/x16/picture_minus.png
Binary files differ
interface/web/themes/default-304/icons/x16/picture_pencil.png
Binary files differ
interface/web/themes/default-304/icons/x16/picture_plus.png
Binary files differ
interface/web/themes/default-304/icons/x16/picture_small.png
Binary files differ
interface/web/themes/default-304/icons/x16/picture_small_sunset.png
Binary files differ
interface/web/themes/default-304/icons/x16/picture_sunset.png
Binary files differ
interface/web/themes/default-304/icons/x16/pictures.png
Binary files differ
interface/web/themes/default-304/icons/x16/pictures_arrow.png
Binary files differ
interface/web/themes/default-304/icons/x16/pictures_exclamation.png
Binary files differ
interface/web/themes/default-304/icons/x16/pictures_minus.png
Binary files differ
interface/web/themes/default-304/icons/x16/pictures_pencil.png
Binary files differ
interface/web/themes/default-304/icons/x16/pictures_plus.png
Binary files differ
interface/web/themes/default-304/icons/x16/pill.png
Binary files differ
interface/web/themes/default-304/icons/x16/pill_arrow.png
Binary files differ
interface/web/themes/default-304/icons/x16/pill_exclamation.png
Binary files differ
interface/web/themes/default-304/icons/x16/pill_minus.png
Binary files differ
interface/web/themes/default-304/icons/x16/pill_pencil.png
Binary files differ
interface/web/themes/default-304/icons/x16/pill_plus.png
Binary files differ
interface/web/themes/default-304/icons/x16/pill_small.png
Binary files differ
interface/web/themes/default-304/icons/x16/pin.png
Binary files differ
interface/web/themes/default-304/icons/x16/pin_arrow.png
Binary files differ
interface/web/themes/default-304/icons/x16/pin_exclamation.png
Binary files differ
interface/web/themes/default-304/icons/x16/pin_minus.png
Binary files differ
interface/web/themes/default-304/icons/x16/pin_pencil.png
Binary files differ
interface/web/themes/default-304/icons/x16/pin_plus.png
Binary files differ
interface/web/themes/default-304/icons/x16/pipette.png
Binary files differ
interface/web/themes/default-304/icons/x16/pipette_arrow.png
Binary files differ
interface/web/themes/default-304/icons/x16/pipette_exclamation.png
Binary files differ
interface/web/themes/default-304/icons/x16/pipette_minus.png
Binary files differ
interface/web/themes/default-304/icons/x16/pipette_pencil.png
Binary files differ
interface/web/themes/default-304/icons/x16/pipette_plus.png
Binary files differ
interface/web/themes/default-304/icons/x16/playing_card.png
Binary files differ
interface/web/themes/default-304/icons/x16/playing_card_arrow.png
Binary files differ
interface/web/themes/default-304/icons/x16/playing_card_exclamation.png
Binary files differ
interface/web/themes/default-304/icons/x16/playing_card_minus.png
Binary files differ
interface/web/themes/default-304/icons/x16/playing_card_pencil.png
Binary files differ
interface/web/themes/default-304/icons/x16/playing_card_plus.png
Binary files differ
interface/web/themes/default-304/icons/x16/plug.png
Binary files differ
interface/web/themes/default-304/icons/x16/plug_arrow.png
Binary files differ
interface/web/themes/default-304/icons/x16/plug_exclamation.png
Binary files differ
interface/web/themes/default-304/icons/x16/plug_minus.png
Binary files differ
interface/web/themes/default-304/icons/x16/plug_pencil.png
Binary files differ
interface/web/themes/default-304/icons/x16/plug_plus.png
Binary files differ
interface/web/themes/default-304/icons/x16/plus.png
Binary files differ
interface/web/themes/default-304/icons/x16/plus_circle.png
Binary files differ
interface/web/themes/default-304/icons/x16/plus_circle_frame.png
Binary files differ
interface/web/themes/default-304/icons/x16/plus_shield.png
Binary files differ
interface/web/themes/default-304/icons/x16/plus_small.png
Binary files differ
interface/web/themes/default-304/icons/x16/plus_small_circle.png
Binary files differ
interface/web/themes/default-304/icons/x16/printer.png
Binary files differ
interface/web/themes/default-304/icons/x16/printer__arrow.png
Binary files differ
interface/web/themes/default-304/icons/x16/printer__exclamation.png
Binary files differ
interface/web/themes/default-304/icons/x16/printer__minus.png
Binary files differ
interface/web/themes/default-304/icons/x16/printer__pencil.png
Binary files differ
interface/web/themes/default-304/icons/x16/printer__plus.png
Binary files differ
interface/web/themes/default-304/icons/x16/printer_empty.png
Binary files differ
interface/web/themes/default-304/icons/x16/printer_small.png
Binary files differ
interface/web/themes/default-304/icons/x16/puzzle.png
Binary files differ
interface/web/themes/default-304/icons/x16/puzzle__arrow.png
Binary files differ
interface/web/themes/default-304/icons/x16/puzzle__exclamation.png
Binary files differ
interface/web/themes/default-304/icons/x16/puzzle__minus.png
Binary files differ
interface/web/themes/default-304/icons/x16/puzzle__pencil.png
Binary files differ
interface/web/themes/default-304/icons/x16/puzzle__plus.png
Binary files differ
interface/web/themes/default-304/icons/x16/puzzle_disable.png
Binary files differ
interface/web/themes/default-304/icons/x16/question.png
Binary files differ
interface/web/themes/default-304/icons/x16/question_frame.png
Binary files differ
interface/web/themes/default-304/icons/x16/question_shield.png
Binary files differ
interface/web/themes/default-304/icons/x16/question_small.png
Binary files differ
interface/web/themes/default-304/icons/x16/receipt.png
Binary files differ
interface/web/themes/default-304/icons/x16/receipt_arrow.png
Binary files differ
interface/web/themes/default-304/icons/x16/receipt_exclamation.png
Binary files differ
interface/web/themes/default-304/icons/x16/receipt_minus.png
Binary files differ
interface/web/themes/default-304/icons/x16/receipt_pencil.png
Binary files differ
interface/web/themes/default-304/icons/x16/receipt_plus.png
Binary files differ
interface/web/themes/default-304/icons/x16/receipt_shred.png
Binary files differ
interface/web/themes/default-304/icons/x16/receipt_text.png
Binary files differ
interface/web/themes/default-304/icons/x16/receipts.png
Binary files differ
interface/web/themes/default-304/icons/x16/receipts_arrow.png
Binary files differ
interface/web/themes/default-304/icons/x16/receipts_exclamation.png
Binary files differ
interface/web/themes/default-304/icons/x16/receipts_minus.png
Binary files differ
interface/web/themes/default-304/icons/x16/receipts_pencil.png
Binary files differ
interface/web/themes/default-304/icons/x16/receipts_plus.png
Binary files differ
interface/web/themes/default-304/icons/x16/receipts_text.png
Binary files differ
interface/web/themes/default-304/icons/x16/report.png
Binary files differ
interface/web/themes/default-304/icons/x16/report_arrow.png
Binary files differ
interface/web/themes/default-304/icons/x16/report_exclamation.png
Binary files differ
interface/web/themes/default-304/icons/x16/report_minus.png
Binary files differ
interface/web/themes/default-304/icons/x16/report_pencil.png
Binary files differ
interface/web/themes/default-304/icons/x16/report_plus.png
Binary files differ
interface/web/themes/default-304/icons/x16/ruler.png
Binary files differ
interface/web/themes/default-304/icons/x16/ruler__arrow.png
Binary files differ
interface/web/themes/default-304/icons/x16/ruler__exclamation.png
Binary files differ
interface/web/themes/default-304/icons/x16/ruler__minus.png
Binary files differ
interface/web/themes/default-304/icons/x16/ruler__pencil.png
Binary files differ
interface/web/themes/default-304/icons/x16/ruler__plus.png
Binary files differ
interface/web/themes/default-304/icons/x16/ruler_crop.png
Binary files differ
interface/web/themes/default-304/icons/x16/safe.png
Binary files differ
interface/web/themes/default-304/icons/x16/safe_arrow.png
Binary files differ
interface/web/themes/default-304/icons/x16/safe_exclamation.png
Binary files differ
interface/web/themes/default-304/icons/x16/safe_minus.png
Binary files differ
interface/web/themes/default-304/icons/x16/safe_pencil.png
Binary files differ
interface/web/themes/default-304/icons/x16/safe_plus.png
Binary files differ
interface/web/themes/default-304/icons/x16/screwdriver.png
Binary files differ
interface/web/themes/default-304/icons/x16/screwdriver_arrow.png
Binary files differ
interface/web/themes/default-304/icons/x16/screwdriver_exclamation.png
Binary files differ
interface/web/themes/default-304/icons/x16/screwdriver_minus.png
Binary files differ
interface/web/themes/default-304/icons/x16/screwdriver_pencil.png
Binary files differ
interface/web/themes/default-304/icons/x16/screwdriver_plus.png
Binary files differ
interface/web/themes/default-304/icons/x16/script.png
Binary files differ
interface/web/themes/default-304/icons/x16/script__arrow.png
Binary files differ
interface/web/themes/default-304/icons/x16/script__exclamation.png
Binary files differ
interface/web/themes/default-304/icons/x16/script__minus.png
Binary files differ
interface/web/themes/default-304/icons/x16/script__pencil.png
Binary files differ
interface/web/themes/default-304/icons/x16/script__plus.png
Binary files differ
interface/web/themes/default-304/icons/x16/script_code.png
Binary files differ
interface/web/themes/default-304/icons/x16/scripts.png
Binary files differ
interface/web/themes/default-304/icons/x16/scripts__arrow.png
Binary files differ
interface/web/themes/default-304/icons/x16/scripts__exclamation.png
Binary files differ
interface/web/themes/default-304/icons/x16/scripts__minus.png
Binary files differ
interface/web/themes/default-304/icons/x16/scripts__pencil.png
Binary files differ
interface/web/themes/default-304/icons/x16/scripts__plus.png
Binary files differ
interface/web/themes/default-304/icons/x16/scripts_code.png
Binary files differ
interface/web/themes/default-304/icons/x16/shield.png
Binary files differ
interface/web/themes/default-304/icons/x16/shield__arrow.png
Binary files differ
interface/web/themes/default-304/icons/x16/shield__exclamation.png
Binary files differ
interface/web/themes/default-304/icons/x16/shield__minus.png
Binary files differ
interface/web/themes/default-304/icons/x16/shield__pencil.png
Binary files differ
interface/web/themes/default-304/icons/x16/shield__plus.png
Binary files differ
interface/web/themes/default-304/icons/x16/shield_disable.png
Binary files differ
interface/web/themes/default-304/icons/x16/slash.png
Binary files differ
interface/web/themes/default-304/icons/x16/slash_small.png
Binary files differ
interface/web/themes/default-304/icons/x16/socket.png
Binary files differ
interface/web/themes/default-304/icons/x16/socket_arrow.png
Binary files differ
interface/web/themes/default-304/icons/x16/socket_exclamation.png
Binary files differ
interface/web/themes/default-304/icons/x16/socket_minus.png
Binary files differ
interface/web/themes/default-304/icons/x16/socket_pencil.png
Binary files differ
interface/web/themes/default-304/icons/x16/socket_plus.png
Binary files differ
interface/web/themes/default-304/icons/x16/sort.png
Binary files differ
interface/web/themes/default-304/icons/x16/sort__arrow.png
Binary files differ
interface/web/themes/default-304/icons/x16/sort__exclamation.png
Binary files differ
interface/web/themes/default-304/icons/x16/sort__minus.png
Binary files differ
interface/web/themes/default-304/icons/x16/sort__pencil.png
Binary files differ
interface/web/themes/default-304/icons/x16/sort__plus.png
Binary files differ
interface/web/themes/default-304/icons/x16/sort_alphabet.png
Binary files differ
interface/web/themes/default-304/icons/x16/sort_alphabet_descending.png
Binary files differ
interface/web/themes/default-304/icons/x16/sort_date.png
Binary files differ
interface/web/themes/default-304/icons/x16/sort_date_descending.png
Binary files differ
interface/web/themes/default-304/icons/x16/sort_number.png
Binary files differ
interface/web/themes/default-304/icons/x16/sort_number_descending.png
Binary files differ
interface/web/themes/default-304/icons/x16/sort_quantity.png
Binary files differ
interface/web/themes/default-304/icons/x16/sort_quantity_descending.png
Binary files differ
interface/web/themes/default-304/icons/x16/sort_small.png
Binary files differ
interface/web/themes/default-304/icons/x16/stamp.png
Binary files differ
interface/web/themes/default-304/icons/x16/stamp_arrow.png
Binary files differ
interface/web/themes/default-304/icons/x16/stamp_exclamation.png
Binary files differ
interface/web/themes/default-304/icons/x16/stamp_minus.png
Binary files differ
interface/web/themes/default-304/icons/x16/stamp_pencil.png
Binary files differ
interface/web/themes/default-304/icons/x16/stamp_plus.png
Binary files differ
interface/web/themes/default-304/icons/x16/star.png
Binary files differ
interface/web/themes/default-304/icons/x16/star__arrow.png
Binary files differ
interface/web/themes/default-304/icons/x16/star__exclamation.png
Binary files differ
interface/web/themes/default-304/icons/x16/star__minus.png
Binary files differ
interface/web/themes/default-304/icons/x16/star__pencil.png
Binary files differ
interface/web/themes/default-304/icons/x16/star__plus.png
Binary files differ
interface/web/themes/default-304/icons/x16/star_empty.png
Binary files differ
interface/web/themes/default-304/icons/x16/star_half.png
Binary files differ
interface/web/themes/default-304/icons/x16/star_small.png
Binary files differ
interface/web/themes/default-304/icons/x16/star_small_empty.png
Binary files differ
interface/web/themes/default-304/icons/x16/star_small_half.png
Binary files differ
interface/web/themes/default-304/icons/x16/sticky_note.png
Binary files differ
interface/web/themes/default-304/icons/x16/sticky_note__arrow.png
Binary files differ
interface/web/themes/default-304/icons/x16/sticky_note__exclamation.png
Binary files differ
interface/web/themes/default-304/icons/x16/sticky_note__minus.png
Binary files differ
interface/web/themes/default-304/icons/x16/sticky_note__pencil.png
Binary files differ
interface/web/themes/default-304/icons/x16/sticky_note__plus.png
Binary files differ
interface/web/themes/default-304/icons/x16/sticky_note_pin.png
Binary files differ
interface/web/themes/default-304/icons/x16/sticky_note_shred.png
Binary files differ
interface/web/themes/default-304/icons/x16/sticky_note_small.png
Binary files differ
interface/web/themes/default-304/icons/x16/sticky_note_small_pin.png
Binary files differ
interface/web/themes/default-304/icons/x16/sticky_note_text.png
Binary files differ
interface/web/themes/default-304/icons/x16/sticky_notes.png
Binary files differ
interface/web/themes/default-304/icons/x16/sticky_notes__arrow.png
Binary files differ
interface/web/themes/default-304/icons/x16/sticky_notes__exclamation.png
Binary files differ
interface/web/themes/default-304/icons/x16/sticky_notes__minus.png
Binary files differ
interface/web/themes/default-304/icons/x16/sticky_notes__pencil.png
Binary files differ
interface/web/themes/default-304/icons/x16/sticky_notes__plus.png
Binary files differ
interface/web/themes/default-304/icons/x16/sticky_notes_pin.png
Binary files differ
interface/web/themes/default-304/icons/x16/sticky_notes_stack.png
Binary files differ
interface/web/themes/default-304/icons/x16/sticky_notes_text.png
Binary files differ
interface/web/themes/default-304/icons/x16/switch.png
Binary files differ
interface/web/themes/default-304/icons/x16/switch_arrow.png
Binary files differ
interface/web/themes/default-304/icons/x16/switch_exclamation.png
Binary files differ
interface/web/themes/default-304/icons/x16/switch_minus.png
Binary files differ
interface/web/themes/default-304/icons/x16/switch_pencil.png
Binary files differ
interface/web/themes/default-304/icons/x16/switch_plus.png
Binary files differ
interface/web/themes/default-304/icons/x16/table.png
Binary files differ
interface/web/themes/default-304/icons/x16/table__arrow.png
Binary files differ
interface/web/themes/default-304/icons/x16/table__exclamation.png
Binary files differ
interface/web/themes/default-304/icons/x16/table__minus.png
Binary files differ
interface/web/themes/default-304/icons/x16/table__pencil.png
Binary files differ
interface/web/themes/default-304/icons/x16/table__plus.png
Binary files differ
interface/web/themes/default-304/icons/x16/table_delete.png
Binary files differ
interface/web/themes/default-304/icons/x16/table_delete_column.png
Binary files differ
interface/web/themes/default-304/icons/x16/table_insert.png
Binary files differ
interface/web/themes/default-304/icons/x16/table_insert_column.png
Binary files differ
interface/web/themes/default-304/icons/x16/tables.png
Binary files differ
interface/web/themes/default-304/icons/x16/tables_arrow.png
Binary files differ
interface/web/themes/default-304/icons/x16/tables_exclamation.png
Binary files differ
interface/web/themes/default-304/icons/x16/tables_minus.png
Binary files differ
interface/web/themes/default-304/icons/x16/tables_pencil.png
Binary files differ
interface/web/themes/default-304/icons/x16/tables_plus.png
Binary files differ
interface/web/themes/default-304/icons/x16/tables_stacks.png
Binary files differ
interface/web/themes/default-304/icons/x16/tag.png
Binary files differ
interface/web/themes/default-304/icons/x16/tag__arrow.png
Binary files differ
interface/web/themes/default-304/icons/x16/tag__exclamation.png
Binary files differ
interface/web/themes/default-304/icons/x16/tag__minus.png
Binary files differ
interface/web/themes/default-304/icons/x16/tag__pencil.png
Binary files differ
interface/web/themes/default-304/icons/x16/tag__plus.png
Binary files differ
interface/web/themes/default-304/icons/x16/tag_label.png
Binary files differ
interface/web/themes/default-304/icons/x16/tag_small.png
Binary files differ
interface/web/themes/default-304/icons/x16/tags.png
Binary files differ
interface/web/themes/default-304/icons/x16/tags__arrow.png
Binary files differ
interface/web/themes/default-304/icons/x16/tags__exclamation.png
Binary files differ
interface/web/themes/default-304/icons/x16/tags__minus.png
Binary files differ
interface/web/themes/default-304/icons/x16/tags__pencil.png
Binary files differ
interface/web/themes/default-304/icons/x16/tags__plus.png
Binary files differ
interface/web/themes/default-304/icons/x16/tags_label.png
Binary files differ
interface/web/themes/default-304/icons/x16/tick.png
Binary files differ
interface/web/themes/default-304/icons/x16/tick_circle.png
Binary files differ
interface/web/themes/default-304/icons/x16/tick_circle_frame.png
Binary files differ
interface/web/themes/default-304/icons/x16/tick_shield.png
Binary files differ
interface/web/themes/default-304/icons/x16/tick_small.png
Binary files differ
interface/web/themes/default-304/icons/x16/tick_small_circle.png
Binary files differ
interface/web/themes/default-304/icons/x16/ticket.png
Binary files differ
interface/web/themes/default-304/icons/x16/ticket_arrow.png
Binary files differ
interface/web/themes/default-304/icons/x16/ticket_exclamation.png
Binary files differ
interface/web/themes/default-304/icons/x16/ticket_minus.png
Binary files differ
interface/web/themes/default-304/icons/x16/ticket_pencil.png
Binary files differ
interface/web/themes/default-304/icons/x16/ticket_plus.png
Binary files differ
interface/web/themes/default-304/icons/x16/ticket_small.png
Binary files differ
interface/web/themes/default-304/icons/x16/trophy.png
Binary files differ
interface/web/themes/default-304/icons/x16/trophy_arrow.png
Binary files differ
interface/web/themes/default-304/icons/x16/trophy_exclamation.png
Binary files differ
interface/web/themes/default-304/icons/x16/trophy_minus.png
Binary files differ
interface/web/themes/default-304/icons/x16/trophy_pencil.png
Binary files differ
interface/web/themes/default-304/icons/x16/trophy_plus.png
Binary files differ
interface/web/themes/default-304/icons/x16/tux.png
Binary files differ
interface/web/themes/default-304/icons/x16/user.png
Binary files differ
interface/web/themes/default-304/icons/x16/user_add.png
Binary files differ
interface/web/themes/default-304/icons/x16/user_comment.png
Binary files differ
interface/web/themes/default-304/icons/x16/user_delete.png
Binary files differ
interface/web/themes/default-304/icons/x16/user_edit.png
Binary files differ
interface/web/themes/default-304/icons/x16/user_female.png
Binary files differ
interface/web/themes/default-304/icons/x16/user_go.png
Binary files differ
interface/web/themes/default-304/icons/x16/user_gray.png
Binary files differ
interface/web/themes/default-304/icons/x16/user_green.png
Binary files differ
interface/web/themes/default-304/icons/x16/user_orange.png
Binary files differ
interface/web/themes/default-304/icons/x16/user_red.png
Binary files differ
interface/web/themes/default-304/icons/x16/user_suit.png
Binary files differ
interface/web/themes/default-304/icons/x16/vcard.png
Binary files differ
interface/web/themes/default-304/icons/x16/vcard_add.png
Binary files differ
interface/web/themes/default-304/icons/x16/vcard_delete.png
Binary files differ
interface/web/themes/default-304/icons/x16/vcard_edit.png
Binary files differ
interface/web/themes/default-304/icons/x16/wall.png
Binary files differ
interface/web/themes/default-304/icons/x16/wall__arrow.png
Binary files differ
interface/web/themes/default-304/icons/x16/wall__exclamation.png
Binary files differ
interface/web/themes/default-304/icons/x16/wall__minus.png
Binary files differ
interface/web/themes/default-304/icons/x16/wall__pencil.png
Binary files differ
interface/web/themes/default-304/icons/x16/wall__plus.png
Binary files differ
interface/web/themes/default-304/icons/x16/wall_brick.png
Binary files differ
interface/web/themes/default-304/icons/x16/wall_disable.png
Binary files differ
interface/web/themes/default-304/icons/x16/wall_small.png
Binary files differ
interface/web/themes/default-304/icons/x16/wall_small_brick.png
Binary files differ
interface/web/themes/default-304/icons/x16/wallet.png
Binary files differ
interface/web/themes/default-304/icons/x16/wallet_arrow.png
Binary files differ
interface/web/themes/default-304/icons/x16/wallet_exclamation.png
Binary files differ
interface/web/themes/default-304/icons/x16/wallet_minus.png
Binary files differ
interface/web/themes/default-304/icons/x16/wallet_pencil.png
Binary files differ
interface/web/themes/default-304/icons/x16/wallet_plus.png
Binary files differ
interface/web/themes/default-304/icons/x16/wand.png
Binary files differ
interface/web/themes/default-304/icons/x16/wand_arrow.png
Binary files differ
interface/web/themes/default-304/icons/x16/wand_exclamation.png
Binary files differ
interface/web/themes/default-304/icons/x16/wand_minus.png
Binary files differ
interface/web/themes/default-304/icons/x16/wand_pencil.png
Binary files differ
interface/web/themes/default-304/icons/x16/wand_plus.png
Binary files differ
interface/web/themes/default-304/icons/x16/wrench.png
Binary files differ
interface/web/themes/default-304/icons/x16/wrench_arrow.png
Binary files differ
interface/web/themes/default-304/icons/x16/wrench_exclamation.png
Binary files differ
interface/web/themes/default-304/icons/x16/wrench_minus.png
Binary files differ
interface/web/themes/default-304/icons/x16/wrench_pencil.png
Binary files differ
interface/web/themes/default-304/icons/x16/wrench_plus.png
Binary files differ
interface/web/themes/default-304/icons/x16/wrench_screwdriver.png
Binary files differ
interface/web/themes/default-304/icons/x16_sprite.png
Binary files differ
interface/web/themes/default-304/icons/x32/calculator.png
Binary files differ
interface/web/themes/default-304/icons/x32/client.png
Binary files differ
interface/web/themes/default-304/icons/x32/dashboard.png
Binary files differ
interface/web/themes/default-304/icons/x32/dns.png
Binary files differ
interface/web/themes/default-304/icons/x32/domain.png
Binary files differ
interface/web/themes/default-304/icons/x32/drawer.png
Binary files differ
interface/web/themes/default-304/icons/x32/email.png
Binary files differ
interface/web/themes/default-304/icons/x32/help.png
Binary files differ
interface/web/themes/default-304/icons/x32/login.png
Binary files differ
interface/web/themes/default-304/icons/x32/monitor.png
Binary files differ
interface/web/themes/default-304/icons/x32/network.png
Binary files differ
interface/web/themes/default-304/icons/x32/server.png
Binary files differ
interface/web/themes/default-304/icons/x32/sites.png
Binary files differ
interface/web/themes/default-304/icons/x32/state_critical.png
Binary files differ
interface/web/themes/default-304/icons/x32/state_error.png
Binary files differ
interface/web/themes/default-304/icons/x32/state_info.png
Binary files differ
interface/web/themes/default-304/icons/x32/state_ok.png
Binary files differ
interface/web/themes/default-304/icons/x32/state_unknown.png
Binary files differ
interface/web/themes/default-304/icons/x32/state_warning.png
Binary files differ
interface/web/themes/default-304/icons/x32/system.png
Binary files differ
interface/web/themes/default-304/icons/x32/tools.png
Binary files differ
interface/web/themes/default-304/icons/x32_sprite.png
Binary files differ
interface/web/themes/default-304/icons/x64/client.png
Binary files differ
interface/web/themes/default-304/icons/x64/dashboard.png
Binary files differ
interface/web/themes/default-304/icons/x64/dns.png
Binary files differ
interface/web/themes/default-304/icons/x64/domain.png
Binary files differ
interface/web/themes/default-304/icons/x64/drawer.png
Binary files differ
interface/web/themes/default-304/icons/x64/email.png
Binary files differ
interface/web/themes/default-304/icons/x64/help.png
Binary files differ
interface/web/themes/default-304/icons/x64/login.png
Binary files differ
interface/web/themes/default-304/icons/x64/monitor.png
Binary files differ
interface/web/themes/default-304/icons/x64/network.png
Binary files differ
interface/web/themes/default-304/icons/x64/server.png
Binary files differ
interface/web/themes/default-304/icons/x64/sites.png
Binary files differ
interface/web/themes/default-304/icons/x64/system.png
Binary files differ
interface/web/themes/default-304/icons/x64/tools.png
Binary files differ
interface/web/themes/default-304/images/Thumbs.db
Binary files differ
interface/web/themes/default-304/images/ajax-loader.gif
Binary files differ
interface/web/themes/default-304/images/buttonHolder_bg.gif
Binary files differ
interface/web/themes/default-304/images/chevron.png
Binary files differ
interface/web/themes/default-304/images/favicon.ico
Binary files differ
interface/web/themes/default-304/images/header_bg.png
Binary files differ
interface/web/themes/default-304/images/header_logo.png
Binary files differ
interface/web/themes/default-304/images/lists_tfoot_bg.png
Binary files differ
interface/web/themes/default-304/images/lists_thead_bg.png
Binary files differ
interface/web/themes/default-304/images/meter_bg.gif
Binary files differ
interface/web/themes/default-304/images/screen_bg.png
Binary files differ
interface/web/themes/default-304/ispconfig_version
File was deleted
interface/web/themes/default-304/licences.txt
File was deleted
interface/web/themes/default-304/templates/admin/firewall_edit.htm
File was deleted
interface/web/themes/default-304/templates/admin/firewall_list.htm
File was deleted
interface/web/themes/default-304/templates/admin/groups_edit.htm
File was deleted
interface/web/themes/default-304/templates/admin/groups_list.htm
File was deleted
interface/web/themes/default-304/templates/admin/iptables_edit.htm
File was deleted
interface/web/themes/default-304/templates/admin/iptables_list.htm
File was deleted
interface/web/themes/default-304/templates/admin/language_add.htm
File was deleted
interface/web/themes/default-304/templates/admin/language_complete.htm
File was deleted
interface/web/themes/default-304/templates/admin/language_edit.htm
File was deleted
interface/web/themes/default-304/templates/admin/language_export.htm
File was deleted
interface/web/themes/default-304/templates/admin/language_import.htm
File was deleted
interface/web/themes/default-304/templates/admin/language_list.htm
File was deleted
interface/web/themes/default-304/templates/admin/remote_action_ispcupdate.htm
File was deleted
interface/web/themes/default-304/templates/admin/remote_action_osupdate.htm
File was deleted
interface/web/themes/default-304/templates/admin/remote_user_edit.htm
File was deleted
interface/web/themes/default-304/templates/admin/remote_user_list.htm
File was deleted
interface/web/themes/default-304/templates/admin/server_config_cron_edit.htm
File was deleted
interface/web/themes/default-304/templates/admin/server_config_dns_edit.htm
File was deleted
interface/web/themes/default-304/templates/admin/server_config_fastcgi_edit.htm
File was deleted
interface/web/themes/default-304/templates/admin/server_config_getmail_edit.htm
File was deleted
interface/web/themes/default-304/templates/admin/server_config_jailkit_edit.htm
File was deleted
interface/web/themes/default-304/templates/admin/server_config_list.htm
File was deleted
interface/web/themes/default-304/templates/admin/server_config_mail_edit.htm
File was deleted
interface/web/themes/default-304/templates/admin/server_config_rescue_edit.htm
File was deleted
interface/web/themes/default-304/templates/admin/server_config_server_edit.htm
File was deleted
interface/web/themes/default-304/templates/admin/server_config_ufw_edit.htm
File was deleted
interface/web/themes/default-304/templates/admin/server_config_vlogger_edit.htm
File was deleted
interface/web/themes/default-304/templates/admin/server_config_web_edit.htm
File was deleted
interface/web/themes/default-304/templates/admin/server_edit_config.htm
File was deleted
interface/web/themes/default-304/templates/admin/server_edit_services.htm
File was deleted
interface/web/themes/default-304/templates/admin/server_ip_edit.htm
File was deleted
interface/web/themes/default-304/templates/admin/server_ip_list.htm
File was deleted
interface/web/themes/default-304/templates/admin/server_list.htm
File was deleted
interface/web/themes/default-304/templates/admin/server_php_fastcgi_edit.htm
File was deleted
interface/web/themes/default-304/templates/admin/server_php_fpm_edit.htm
File was deleted
interface/web/themes/default-304/templates/admin/server_php_list.htm
File was deleted
interface/web/themes/default-304/templates/admin/server_php_name_edit.htm
File was deleted
interface/web/themes/default-304/templates/admin/software_package_install.htm
File was deleted
interface/web/themes/default-304/templates/admin/software_package_list.htm
File was deleted
interface/web/themes/default-304/templates/admin/software_repo_edit.htm
File was deleted
interface/web/themes/default-304/templates/admin/software_repo_list.htm
File was deleted
interface/web/themes/default-304/templates/admin/software_update_list.htm
File was deleted
interface/web/themes/default-304/templates/admin/system_config_domains_edit.htm
File was deleted
interface/web/themes/default-304/templates/admin/system_config_mail_edit.htm
File was deleted
interface/web/themes/default-304/templates/admin/system_config_misc_edit.htm
File was deleted
interface/web/themes/default-304/templates/admin/system_config_sites_edit.htm
File was deleted
interface/web/themes/default-304/templates/admin/tpl_default_basic.htm
File was deleted
interface/web/themes/default-304/templates/admin/users_groups_edit.htm
File was deleted
interface/web/themes/default-304/templates/admin/users_list.htm
File was deleted
interface/web/themes/default-304/templates/admin/users_user_edit.htm
File was deleted
interface/web/themes/default-304/templates/client/client_circle_edit.htm
File was deleted
interface/web/themes/default-304/templates/client/client_circle_list.htm
File was deleted
interface/web/themes/default-304/templates/client/client_del.htm
File was deleted
interface/web/themes/default-304/templates/client/client_edit_address.htm
File was deleted
interface/web/themes/default-304/templates/client/client_edit_limits.htm
File was deleted
interface/web/themes/default-304/templates/client/client_message.htm
File was deleted
interface/web/themes/default-304/templates/client/client_template_edit_limits.htm
File was deleted
interface/web/themes/default-304/templates/client/client_template_edit_template.htm
File was deleted
interface/web/themes/default-304/templates/client/client_template_list.htm
File was deleted
interface/web/themes/default-304/templates/client/clients_list.htm
File was deleted
interface/web/themes/default-304/templates/client/domain_edit.htm
File was deleted
interface/web/themes/default-304/templates/client/domain_list.htm
File was deleted
interface/web/themes/default-304/templates/client/reseller_edit_address.htm
File was deleted
interface/web/themes/default-304/templates/client/reseller_edit_limits.htm
File was deleted
interface/web/themes/default-304/templates/client/resellers_list.htm
File was deleted
interface/web/themes/default-304/templates/dashboard/custom_menu.htm
File was deleted
interface/web/themes/default-304/templates/dashboard/dashboard.htm
File was deleted
interface/web/themes/default-304/templates/dashboard/dashlets/limits.htm
File was deleted
interface/web/themes/default-304/templates/dashboard/dashlets/modules.htm
File was deleted
interface/web/themes/default-304/templates/designer/form_edit.htm
File was deleted
interface/web/themes/default-304/templates/designer/form_list.htm
File was deleted
interface/web/themes/default-304/templates/designer/form_show.htm
File was deleted
interface/web/themes/default-304/templates/designer/module_edit.htm
File was deleted
interface/web/themes/default-304/templates/designer/module_list.htm
File was deleted
interface/web/themes/default-304/templates/designer/module_nav_edit.htm
File was deleted
interface/web/themes/default-304/templates/designer/module_nav_item_edit.htm
File was deleted
interface/web/themes/default-304/templates/designer/module_show.htm
File was deleted
interface/web/themes/default-304/templates/designer/paging.tpl.htm
File was deleted
interface/web/themes/default-304/templates/dns/dns_a_edit.htm
File was deleted
interface/web/themes/default-304/templates/dns/dns_a_list.htm
File was deleted
interface/web/themes/default-304/templates/dns/dns_aaaa_edit.htm
File was deleted
interface/web/themes/default-304/templates/dns/dns_alias_edit.htm
File was deleted
interface/web/themes/default-304/templates/dns/dns_cname_edit.htm
File was deleted
interface/web/themes/default-304/templates/dns/dns_hinfo_edit.htm
File was deleted
interface/web/themes/default-304/templates/dns/dns_import.htm
File was deleted
interface/web/themes/default-304/templates/dns/dns_mx_edit.htm
File was deleted
interface/web/themes/default-304/templates/dns/dns_ns_edit.htm
File was deleted
interface/web/themes/default-304/templates/dns/dns_ptr_edit.htm
File was deleted
interface/web/themes/default-304/templates/dns/dns_records_edit.htm
File was deleted
interface/web/themes/default-304/templates/dns/dns_rp_edit.htm
File was deleted
interface/web/themes/default-304/templates/dns/dns_slave_edit.htm
File was deleted
interface/web/themes/default-304/templates/dns/dns_slave_list.htm
File was deleted
interface/web/themes/default-304/templates/dns/dns_soa_edit.htm
File was deleted
interface/web/themes/default-304/templates/dns/dns_soa_list.htm
File was deleted
interface/web/themes/default-304/templates/dns/dns_srv_edit.htm
File was deleted
interface/web/themes/default-304/templates/dns/dns_template_edit.htm
File was deleted
interface/web/themes/default-304/templates/dns/dns_template_list.htm
File was deleted
interface/web/themes/default-304/templates/dns/dns_txt_edit.htm
File was deleted
interface/web/themes/default-304/templates/dns/dns_wizard.htm
File was deleted
interface/web/themes/default-304/templates/error.tpl.htm
File was deleted
interface/web/themes/default-304/templates/form.tpl.htm
File was deleted
interface/web/themes/default-304/templates/help/faq_edit.htm
File was deleted
interface/web/themes/default-304/templates/help/faq_manage_questions_list.htm
File was deleted
interface/web/themes/default-304/templates/help/faq_sections_edit.htm
File was deleted
interface/web/themes/default-304/templates/help/help_faq_list.htm
File was deleted
interface/web/themes/default-304/templates/help/help_faq_sections_list.htm
File was deleted
interface/web/themes/default-304/templates/help/support_message_edit.htm
File was deleted
interface/web/themes/default-304/templates/help/support_message_list.htm
File was deleted
interface/web/themes/default-304/templates/help/support_message_view.htm
File was deleted
interface/web/themes/default-304/templates/listpage.tpl.htm
File was deleted
interface/web/themes/default-304/templates/login/index.htm
File was deleted
interface/web/themes/default-304/templates/login/password_reset.htm
File was deleted
interface/web/themes/default-304/templates/mail/mail_alias_edit.htm
File was deleted
interface/web/themes/default-304/templates/mail/mail_alias_list.htm
File was deleted
interface/web/themes/default-304/templates/mail/mail_aliasdomain_edit.htm
File was deleted
interface/web/themes/default-304/templates/mail/mail_aliasdomain_list.htm
File was deleted
interface/web/themes/default-304/templates/mail/mail_blacklist_edit.htm
File was deleted
interface/web/themes/default-304/templates/mail/mail_blacklist_list.htm
File was deleted
interface/web/themes/default-304/templates/mail/mail_content_filter_edit.htm
File was deleted
interface/web/themes/default-304/templates/mail/mail_content_filter_list.htm
File was deleted
interface/web/themes/default-304/templates/mail/mail_domain_admin_list.htm
File was deleted
interface/web/themes/default-304/templates/mail/mail_domain_catchall_edit.htm
File was deleted
interface/web/themes/default-304/templates/mail/mail_domain_catchall_list.htm
File was deleted
interface/web/themes/default-304/templates/mail/mail_domain_edit.htm
File was deleted
interface/web/themes/default-304/templates/mail/mail_domain_list.htm
File was deleted
interface/web/themes/default-304/templates/mail/mail_forward_edit.htm
File was deleted
interface/web/themes/default-304/templates/mail/mail_forward_list.htm
File was deleted
interface/web/themes/default-304/templates/mail/mail_get_edit.htm
File was deleted
interface/web/themes/default-304/templates/mail/mail_get_list.htm
File was deleted
interface/web/themes/default-304/templates/mail/mail_mailinglist_edit.htm
File was deleted
interface/web/themes/default-304/templates/mail/mail_mailinglist_list.htm
File was deleted
interface/web/themes/default-304/templates/mail/mail_relay_recipient_edit.htm
File was deleted
interface/web/themes/default-304/templates/mail/mail_relay_recipient_list.htm
File was deleted
interface/web/themes/default-304/templates/mail/mail_transport_edit.htm
File was deleted
interface/web/themes/default-304/templates/mail/mail_transport_list.htm
File was deleted
interface/web/themes/default-304/templates/mail/mail_user_autoresponder_edit.htm
File was deleted
interface/web/themes/default-304/templates/mail/mail_user_custom_rules_edit.htm
File was deleted
interface/web/themes/default-304/templates/mail/mail_user_filter_edit.htm
File was deleted
interface/web/themes/default-304/templates/mail/mail_user_filter_list.htm
File was deleted
interface/web/themes/default-304/templates/mail/mail_user_list.htm
File was deleted
interface/web/themes/default-304/templates/mail/mail_user_mailbox_edit.htm
File was deleted
interface/web/themes/default-304/templates/mail/mail_user_mailfilter_edit.htm
File was deleted
interface/web/themes/default-304/templates/mail/mail_user_stats_list.htm
File was deleted
interface/web/themes/default-304/templates/mail/mail_whitelist_edit.htm
File was deleted
interface/web/themes/default-304/templates/mail/mail_whitelist_list.htm
File was deleted
interface/web/themes/default-304/templates/mail/spamfilter_blacklist_edit.htm
File was deleted
interface/web/themes/default-304/templates/mail/spamfilter_blacklist_list.htm
File was deleted
interface/web/themes/default-304/templates/mail/spamfilter_config_getmail_edit.htm
File was deleted
interface/web/themes/default-304/templates/mail/spamfilter_config_list.htm
File was deleted
interface/web/themes/default-304/templates/mail/spamfilter_config_mail_edit.htm
File was deleted
interface/web/themes/default-304/templates/mail/spamfilter_config_server_edit.htm
File was deleted
interface/web/themes/default-304/templates/mail/spamfilter_other_edit.htm
File was deleted
interface/web/themes/default-304/templates/mail/spamfilter_policy_edit.htm
File was deleted
interface/web/themes/default-304/templates/mail/spamfilter_policy_list.htm
File was deleted
interface/web/themes/default-304/templates/mail/spamfilter_quarantine_edit.htm
File was deleted
interface/web/themes/default-304/templates/mail/spamfilter_taglevel_edit.htm
File was deleted
interface/web/themes/default-304/templates/mail/spamfilter_users_edit.htm
File was deleted
interface/web/themes/default-304/templates/mail/spamfilter_users_list.htm
File was deleted
interface/web/themes/default-304/templates/mail/spamfilter_whitelist_edit.htm
File was deleted
interface/web/themes/default-304/templates/mail/spamfilter_whitelist_list.htm
File was deleted
interface/web/themes/default-304/templates/mail/user_quota_stats_list.htm
File was deleted
interface/web/themes/default-304/templates/mailuser/index.htm
File was deleted
interface/web/themes/default-304/templates/mailuser/mail_user_autoresponder_edit.htm
File was deleted
interface/web/themes/default-304/templates/mailuser/mail_user_cc_edit.htm
File was deleted
interface/web/themes/default-304/templates/mailuser/mail_user_filter_edit.htm
File was deleted
interface/web/themes/default-304/templates/mailuser/mail_user_filter_list.htm
File was deleted
interface/web/themes/default-304/templates/mailuser/mail_user_password_edit.htm
File was deleted
interface/web/themes/default-304/templates/mailuser/mail_user_spamfilter_edit.htm
File was deleted
interface/web/themes/default-304/templates/main.tpl.htm
File was deleted
interface/web/themes/default-304/templates/module.tpl.htm
File was deleted
interface/web/themes/default-304/templates/module_tree.tpl.htm
File was deleted
interface/web/themes/default-304/templates/monitor/datalog_list.htm
File was deleted
interface/web/themes/default-304/templates/monitor/show_data.htm
File was deleted
interface/web/themes/default-304/templates/monitor/show_log.htm
File was deleted
interface/web/themes/default-304/templates/monitor/show_sys_state.htm
File was deleted
interface/web/themes/default-304/templates/monitor/syslog_list.htm
File was deleted
interface/web/themes/default-304/templates/sidenav.tpl.htm
File was deleted
interface/web/themes/default-304/templates/sites/aps_install_package.htm
File was deleted
interface/web/themes/default-304/templates/sites/aps_instances_list.htm
File was deleted
interface/web/themes/default-304/templates/sites/aps_packagedetails_show.htm
File was deleted
interface/web/themes/default-304/templates/sites/aps_packages_list.htm
File was deleted
interface/web/themes/default-304/templates/sites/cron_edit.htm
File was deleted
interface/web/themes/default-304/templates/sites/cron_list.htm
File was deleted
interface/web/themes/default-304/templates/sites/database_admin_list.htm
File was deleted
interface/web/themes/default-304/templates/sites/database_edit.htm
File was deleted
interface/web/themes/default-304/templates/sites/database_list.htm
File was deleted
interface/web/themes/default-304/templates/sites/database_user_admin_list.htm
File was deleted
interface/web/themes/default-304/templates/sites/database_user_edit.htm
File was deleted
interface/web/themes/default-304/templates/sites/database_user_list.htm
File was deleted
interface/web/themes/default-304/templates/sites/ftp_user_advanced.htm
File was deleted
interface/web/themes/default-304/templates/sites/ftp_user_advanced_client.htm
File was deleted
interface/web/themes/default-304/templates/sites/ftp_user_edit.htm
File was deleted
interface/web/themes/default-304/templates/sites/ftp_user_list.htm
File was deleted
interface/web/themes/default-304/templates/sites/shell_user_advanced.htm
File was deleted
interface/web/themes/default-304/templates/sites/shell_user_edit.htm
File was deleted
interface/web/themes/default-304/templates/sites/shell_user_list.htm
File was deleted
interface/web/themes/default-304/templates/sites/user_quota_stats_list.htm
File was deleted
interface/web/themes/default-304/templates/sites/web_aliasdomain_edit.htm
File was deleted
interface/web/themes/default-304/templates/sites/web_aliasdomain_list.htm
File was deleted
interface/web/themes/default-304/templates/sites/web_backup_list.htm
File was deleted
interface/web/themes/default-304/templates/sites/web_domain_admin_list.htm
File was deleted
interface/web/themes/default-304/templates/sites/web_domain_advanced.htm
File was deleted
interface/web/themes/default-304/templates/sites/web_domain_backup.htm
File was deleted
interface/web/themes/default-304/templates/sites/web_domain_edit.htm
File was deleted
interface/web/themes/default-304/templates/sites/web_domain_list.htm
File was deleted
interface/web/themes/default-304/templates/sites/web_domain_redirect.htm
File was deleted
interface/web/themes/default-304/templates/sites/web_domain_ssl.htm
File was deleted
interface/web/themes/default-304/templates/sites/web_domain_stats.htm
File was deleted
interface/web/themes/default-304/templates/sites/web_folder_edit.htm
File was deleted
interface/web/themes/default-304/templates/sites/web_folder_list.htm
File was deleted
interface/web/themes/default-304/templates/sites/web_folder_user_edit.htm
File was deleted
interface/web/themes/default-304/templates/sites/web_folder_user_list.htm
File was deleted
interface/web/themes/default-304/templates/sites/web_sites_stats_list.htm
File was deleted
interface/web/themes/default-304/templates/sites/web_subdomain_edit.htm
File was deleted
interface/web/themes/default-304/templates/sites/web_subdomain_list.htm
File was deleted
interface/web/themes/default-304/templates/sites/web_vhost_subdomain_advanced.htm
File was deleted
interface/web/themes/default-304/templates/sites/web_vhost_subdomain_backup.htm
File was deleted
interface/web/themes/default-304/templates/sites/web_vhost_subdomain_edit.htm
File was deleted
interface/web/themes/default-304/templates/sites/web_vhost_subdomain_list.htm
File was deleted
interface/web/themes/default-304/templates/sites/web_vhost_subdomain_redirect.htm
File was deleted
interface/web/themes/default-304/templates/sites/web_vhost_subdomain_ssl.htm
File was deleted
interface/web/themes/default-304/templates/sites/web_vhost_subdomain_stats.htm
File was deleted
interface/web/themes/default-304/templates/sites/webdav_user_edit.htm
File was deleted
interface/web/themes/default-304/templates/sites/webdav_user_list.htm
File was deleted
interface/web/themes/default-304/templates/tabbed_form.tpl.htm
File was deleted
interface/web/themes/default-304/templates/tools/dns_import_tupa.htm
File was deleted
interface/web/themes/default-304/templates/tools/import_ispconfig.htm
File was deleted
interface/web/themes/default-304/templates/tools/import_plesk.htm
File was deleted
interface/web/themes/default-304/templates/tools/index.htm
File was deleted
interface/web/themes/default-304/templates/tools/interface_settings.htm
File was deleted
interface/web/themes/default-304/templates/tools/resync.htm
File was deleted
interface/web/themes/default-304/templates/tools/tpl_default.htm
File was deleted
interface/web/themes/default-304/templates/tools/user_settings.htm
File was deleted
interface/web/themes/default-304/templates/topnav.tpl.htm
File was deleted
interface/web/themes/default-304/templates/vm/openvz_action.htm
File was deleted
interface/web/themes/default-304/templates/vm/openvz_ip_edit.htm
File was deleted
interface/web/themes/default-304/templates/vm/openvz_ip_list.htm
File was deleted
interface/web/themes/default-304/templates/vm/openvz_ostemplate_edit.htm
File was deleted
interface/web/themes/default-304/templates/vm/openvz_ostemplate_list.htm
File was deleted
interface/web/themes/default-304/templates/vm/openvz_template_advanced_edit.htm
File was deleted
interface/web/themes/default-304/templates/vm/openvz_template_edit.htm
File was deleted
interface/web/themes/default-304/templates/vm/openvz_template_list.htm
File was deleted
interface/web/themes/default-304/templates/vm/openvz_vm_advanced_edit.htm
File was deleted
interface/web/themes/default-304/templates/vm/openvz_vm_edit.htm
File was deleted
interface/web/themes/default-304/templates/vm/openvz_vm_list.htm
File was deleted
interface/web/themes/default-304/yaml/!important.txt
File was deleted
interface/web/themes/default-304/yaml/core/base.css
File was deleted
interface/web/themes/default-304/yaml/core/iehacks.css
File was deleted
interface/web/themes/default-304/yaml/core/print_base.css
File was deleted
interface/web/themes/default-304/yaml/core/slim_base.css
File was deleted
interface/web/themes/default-304/yaml/core/slim_iehacks.css
File was deleted
interface/web/themes/default-304/yaml/core/slim_print_base.css
File was deleted
interface/web/themes/default-304/yaml/debug/debug.css
File was deleted
interface/web/themes/default-304/yaml/debug/images/grid_pattern.png
Binary files differ
interface/web/themes/default-304/yaml/debug/images/warning_iehacks.gif
Binary files differ
interface/web/themes/default-304/yaml/debug/images/yaml_debug.gif
Binary files differ
interface/web/themes/default-304/yaml/navigation/nav_vlist.css
File was deleted
interface/web/themes/default-304/yaml/patches/patch_layout_draft.css
File was deleted
interface/web/themes/default-304/yaml/patches/patch_nav_vlist.css
File was deleted
interface/web/themes/default-304/yaml/print/print_003_draft.css
File was deleted
interface/web/themes/default-304/yaml/print/print_020_draft.css
File was deleted
interface/web/themes/default-304/yaml/print/print_023_draft.css
File was deleted
interface/web/themes/default-304/yaml/print/print_100_draft.css
File was deleted
interface/web/themes/default-304/yaml/print/print_103_draft.css
File was deleted
interface/web/themes/default-304/yaml/print/print_120_draft.css
File was deleted
interface/web/themes/default-304/yaml/print/print_123_draft.css
File was deleted
interface/web/themes/default-304/yaml/screen/basemod_draft.css
File was deleted
interface/web/themes/default-304/yaml/screen/content_default.css
File was deleted
interface/web/themes/default/templates/main.tpl.htm
@@ -48,8 +48,8 @@
                
                jQuery('.ttip').tipsy({live: true, gravity: 'ne', html: true});
                
                tabChangeDiscard = '<tmpl_var name="tabchange_discard_enabled>';
                tabChangeWarning = '<tmpl_var name="tabchange_warning_enabled>';
                tabChangeDiscard = '<tmpl_var name="tabchange_discard_enabled">';
                tabChangeWarning = '<tmpl_var name="tabchange_warning_enabled">';
                tabChangeWarningTxt = '<tmpl_var name="global_tabchange_warning_txt">';
                tabChangeDiscardTxt = '<tmpl_var name="global_tabchange_discard_txt">';
                
interface/web/tools/user_settings.php
@@ -44,6 +44,10 @@
//* Check permissions for module
$app->auth->check_module_permissions('tools');
if($_SESSION['s']['user']['typ'] == 'admin') {
    $app->auth->check_security_permissions('admin_allow_new_admin');
}
// Loading classes
$app->uses('tpl,tform,tform_actions');
$app->load('tform_actions');
remoting_client/examples/sites_ftp_user_add.php
@@ -20,13 +20,13 @@
    $params = array(
        'server_id' => 1,
        'parent_domain_id' => 1,
        'username' => 'threep',
        'password' => 'wood',
        'username' => 'tom',
        'password' => 'secret',
        'quota_size' => 10000,
        'active' => 'y',
        'uid' => '5000',
        'gid' => '5000',
        'dir' => 'maybe',
        'dir' => '/var/www/clients/client0/web1',
        'quota_files' => -1,
        'ul_ratio' => -1,
        'dl_ratio' => -1,
remoting_client/examples/sites_ftp_user_update.php
@@ -15,7 +15,7 @@
    }
    //* Parameters
    $client_id = 1;
    $client_id = 0;
    $ftp_user_id = 1;
remoting_client/examples/sites_shell_user_add.php
@@ -20,14 +20,14 @@
    $params = array(
        'server_id' => 1,
        'parent_domain_id' => 1,
        'username' => 'threep2',
        'password' => 'wood',
        'username' => 'tom',
        'password' => 'test',
        'quota_size' => 10000,
        'active' => 'y',
        'puser' => 'null',
        'pgroup' => 'null',
        'puser' => 'web1',
        'pgroup' => 'client0',
        'shell' => '/bin/bash',
        'dir' => 'maybe',
        'dir' => '/var/www/clients/client0/web1',
        'chroot' => ''
    );
remoting_client/examples/sites_shell_user_update.php
@@ -15,7 +15,7 @@
    }
    //* Parameters
    $client_id = 3;
    $client_id = 0;
    $shell_user_id = 1;
security/README.txt
New file
@@ -0,0 +1,96 @@
Description for security_settings.ini values.
The option "superadmin" means that a setting is only available to the admin user with userid 1 in the interface.
If there are other amdins, then they cant access this setting.
-----------------------------------------------------------
Setting:     allow_shell_user
Options:     yes/no
Description: Disables the shell user plugins in ispconfig
Setting:     admin_allow_server_config
Options:     yes/no/superadmin
Description: Disables System > Server config
Setting:     admin_allow_server_services
Options:     yes/no/superadmin
Description: Disables System > Server services
Setting:     admin_allow_server_ip
Options:     yes/no/superadmin
Description: Disables System > Server IP
Setting:     admin_allow_remote_users
Options:     yes/no/superadmin
Description: Disables System > Remote Users
Setting:     admin_allow_system_config
Options:     yes/no/superadmin
Description: Disables System > Interface > Main Config
Setting:     admin_allow_server_php
Options:     yes/no/superadmin
Description: Disables System > Additional PHP versions
Setting:     admin_allow_langedit
Options:     yes/no/superadmin
Description: Disables System > Language editor functions
Setting:     admin_allow_new_admin
Options:     yes/no/superadmin
Description: Disables the ability to add new admin users trough the interface
Setting:     admin_allow_del_cpuser
Options:     yes/no/superadmin
Description: Disables the ability to delete CP users
Setting:     admin_allow_cpuser_group
Options:     yes/no/superadmin
Description: Disables cp user group editing
Setting:     admin_allow_firewall_config
Options:     yes/no/superadmin
Description: Disables System > Firewall
Setting:     admin_allow_osupdate
Options:     yes/no/superadmin
Description: Disables System > OS update
Setting:     admin_allow_software_packages
Options:     yes/no/superadmin
Description: Disables System > Apps & Addons > Packages and Update
Setting:     admin_allow_software_repo
Options:     yes/no/superadmin
Description: Disables System > Apps & Addons > Repo
Setting:     remote_api_allowed
Options:     yes/no
Description: Disables the remote API
Setting:     security_admin_email
Options:     email address
Description: Email address of the security admin
Setting:     security_admin_email_subject
Options:     Text
Description: Subject of the notification email
Setting:     warn_new_admin
Options:     yes/no
Description: Warn by email when a new admin user in ISPConfig has been added.
Setting:     warn_passwd_change
Options:     yes/no
Description: Warn by email when /etc/passwd has been changed.
Setting:     warn_shadow_change
Options:     yes/no
Description: Warn by email when /etc/shadow has been changed.
Setting:     warn_group_change
Options:     yes/no
Description: Warn by email when /etc/group has been changed.
security/apache_directives.blacklist
New file
@@ -0,0 +1,3 @@
/^\s*(LoadModule|LoadFile|Include)(\s+|[\\\\])/mi
/^\s*(SuexecUserGroup|suPHP_UserGroup|suPHP_PHPPath|suPHP_ConfigPath)(\s+|[\\\\])/mi
/^\s*(FCGIWrapper|FastCgiExternalServer)(\s+|[\\\\])/mi
security/check.php
New file
@@ -0,0 +1,154 @@
<?php
/*
Copyright (c) 2014, Till Brehm, ISPConfig UG
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 "/usr/local/ispconfig/server/lib/config.inc.php";
require "/usr/local/ispconfig/server/lib/app.inc.php";
set_time_limit(0);
ini_set('error_reporting', E_ALL & ~E_NOTICE);
// make sure server_id is always an int
$conf['server_id'] = intval($conf['server_id']);
// Load required base-classes
$app->uses('ini_parser,file,services,getconf,system');
// get security config
$security_config = $app->getconf->get_security_config('systemcheck');
$alert = '';
$data_dir = '/usr/local/ispconfig/security/data';
// Check if a new ispconfig user has been added
if($security_config['warn_new_admin'] == 'yes') {
    $data_file = $data_dir.'/admincount';
    //get number of admins
    $tmp = $app->db->queryOneRecord("SELECT count(userid) AS number FROM sys_user WHERE typ = 'admin'");
    $admin_user_count_new = intval($tmp['number']);
    if(is_file($data_file)) {
        $admin_user_count_old = intval(file_get_contents($data_file));
        if($admin_user_count_new != $admin_user_count_old) {
            $alert .= "The number of ISPConfig administrator users has changed. Old: $admin_user_count_old New: $admin_user_count_new \n";
            file_put_contents($data_file,$admin_user_count_new);
        }
    } else {
        // first run, so we save the current count
        file_put_contents($data_file,$admin_user_count_new);
        chmod($data_file,0700);
    }
}
// Check if /etc/passwd file has been changed
if($security_config['warn_passwd_change'] == 'yes') {
    $data_file = $data_dir.'/passwd.md5';
    $md5sum_new = md5_file('/etc/passwd');
    if(is_file($data_file)) {
        $md5sum_old = trim(file_get_contents($data_file));
        if($md5sum_new != $md5sum_old) {
            $alert .= "The file /etc/passwd has been changed.\n";
            file_put_contents($data_file,$md5sum_new);
        }
    } else {
        file_put_contents($data_file,$md5sum_new);
        chmod($data_file,0700);
    }
}
// Check if /etc/shadow file has been changed
if($security_config['warn_shadow_change'] == 'yes') {
    $data_file = $data_dir.'/shadow.md5';
    $md5sum_new = md5_file('/etc/shadow');
    if(is_file($data_file)) {
        $md5sum_old = trim(file_get_contents($data_file));
        if($md5sum_new != $md5sum_old) {
            $alert .= "The file /etc/shadow has been changed.\n";
            file_put_contents($data_file,$md5sum_new);
        }
    } else {
        file_put_contents($data_file,$md5sum_new);
        chmod($data_file,0700);
    }
}
// Check if /etc/group file has been changed
if($security_config['warn_group_change'] == 'yes') {
    $data_file = $data_dir.'/group.md5';
    $md5sum_new = md5_file('/etc/group');
    if(is_file($data_file)) {
        $md5sum_old = trim(file_get_contents($data_file));
        if($md5sum_new != $md5sum_old) {
            $alert .= "The file /etc/group has been changed.\n";
            file_put_contents($data_file,$md5sum_new);
        }
    } else {
        file_put_contents($data_file,$md5sum_new);
        chmod($data_file,0700);
    }
}
if($alert != '') {
    $admin_email = $security_config['security_admin_email'];
    $admin_email_subject = $security_config['security_admin_email_subject'];
    mail($admin_email, $admin_email_subject, $alert);
    //$app->log(str_replace("\n"," -- ",$alert),1);
    echo str_replace("\n"," -- ",$alert)."\n";
}
?>
security/data/empty.dir
security/ids.htmlfield
New file
@@ -0,0 +1,5 @@
# Format: usertype:url_path:field
# usertype can be: any/client/admin
# Example:
# admin:/admin/language_edit.php:POST.records.weak_password_txt
admin:/admin/language_edit.php:POST.records
security/ids.whitelist
New file
@@ -0,0 +1,45 @@
# Format: usertype:url_path:field
# usertype can be: any/client/admin
# Example:
# admin:/admin/language_edit.php:POST.records.weak_password_txt
admin:/admin/server_config_edit.php:POST.maildir_path
admin:/admin/server_config_edit.php:POST.website_path
admin:/admin/server_config_edit.php:POST.website_symlinks
admin:/admin/server_config_edit.php:POST.vhost_conf_dir
admin:/admin/server_config_edit.php:POST.vhost_conf_enabled_dir
admin:/admin/server_config_edit.php:POST.nginx_vhost_conf_dir
admin:/admin/server_config_edit.php:POST.nginx_vhost_conf_enabled_dir
admin:/admin/server_config_edit.php:POST.php_open_basedir
admin:/admin/server_config_edit.php:POST.awstats_pl
admin:/admin/server_config_edit.php:POST.fastcgi_starter_path
admin:/admin/server_config_edit.php:POST.fastcgi_bin
admin:/admin/server_config_edit.php:POST.jailkit_chroot_home
admin:/admin/remote_user_edit.php:POST.remote_functions.1
admin:/admin/firewall_edit.php:POST.tcp_port
admin:/admin/system_config_edit.php:POST.admin_dashlets_right
admin:/admin/system_config_edit.php:POST.reseller_dashlets_left
admin:/admin/system_config_edit.php:POST.reseller_dashlets_right
admin:/admin/language_edit.php:POST.records.weak_password_txt
user:/client/client_message.php:POST.message
user:/client/message_template_edit.php:POST.subject
admin:/dns/dns_template_edit.php:POST.template
admin:/nav.php:SESSION.s.module.nav.1.items.0.title
admin:/monitor/show_sys_state.php:SESSION.s.module.nav.1.items.0.title
admin:/capp.php:SESSION.s.module.nav.1.items.0.title
admin:/keepalive.php:SESSION.s.module.nav.1.items.0.title
admin:/monitor/log_list.php:SESSION.s.module.nav.1.items.0.title
admin:/monitor/datalog_list.php:SESSION.s.module.nav.1.items.0.title
admin:/monitor/show_data.php:SESSION.s.module.nav.1.items.0.title
admin:/monitor/show_sys_state.php:SESSION.s.module.nav.1.items.0.title
admin:/monitor/show_monit.php:SESSION.s.module.nav.1.items.0.title
admin:/monitor/show_munin.php:SESSION.s.module.nav.1.items.0.title
admin:/monitor/show_data.php:SESSION.s.module.nav.1.items.0.title
admin:/monitor/show_log.php:SESSION.s.module.nav.1.items.0.title
admin:/monitor/log_del.php:SESSION.s.module.nav.1.items.0.title
admin:/keepalive.php:SESSION.s.module.nav.1.items.0.title
admin:/capp.php:SESSION.s.module.nav.1.items.0.title
admin:/sites/web_vhost_subdomain_edit.php:POST.php_open_basedir
admin:/sites/web_domain_edit.php:POST.php_open_basedir
admin:/sites/web_domain_edit.php:POST.apache_directives
user:/sites/shell_user_edit.php:POST.ssh_rsa
user:/sites/cron_edit.php:POST.command
security/security_settings.ini
New file
@@ -0,0 +1,34 @@
[permissions]
allow_shell_user=yes
admin_allow_server_config=superadmin
admin_allow_server_services=superadmin
admin_allow_server_ip=superadmin
admin_allow_remote_users=superadmin
admin_allow_system_config=superadmin
admin_allow_server_php=superadmin
admin_allow_langedit=superadmin
admin_allow_new_admin=superadmin
admin_allow_del_cpuser=superadmin
admin_allow_cpuser_group=superadmin
admin_allow_firewall_config=superadmin
admin_allow_osupdate=superadmin
admin_allow_software_packages=superadmin
admin_allow_software_repo=superadmin
remote_api_allowed=yes
[ids]
ids_enabled=yes
ids_log_level=1
ids_warn_level=5
ids_block_level=30
sql_scan_enabled=yes
sql_scan_action=warn
apache_directives_scan_enabled=yes
[systemcheck]
security_admin_email=root@localhost
security_admin_email_subject=Security alert from server
warn_new_admin=yes
warn_passwd_change=no
warn_shadow_change=no
warn_group_change=no
server/lib/classes/getconf.inc.php
@@ -59,6 +59,15 @@
        }
        return ($section == '') ? $this->config['global'] : $this->config['global'][$section];
    }
    public function get_security_config($section = '') {
        global $app;
        $app->uses('ini_parser');
        $security_config = $app->ini_parser->parse_ini_string(file_get_contents('/usr/local/ispconfig/security/security_settings.ini'));
        return ($section == '') ? $security_config : $security_config[$section];
    }
}
server/plugins-available/maildeliver_plugin.inc.php
@@ -130,6 +130,7 @@
            $tpl->setLoop('ccloop', $tmp_addresses_arr);
            // Custom filters
            if($data["new"]["custom_mailfilter"] == 'NULL') $data["new"]["custom_mailfilter"] = '';
            $tpl->setVar('custom_mailfilter', $data["new"]["custom_mailfilter"]);
            // Move junk
server/plugins-available/mailman_plugin.inc.php
@@ -75,6 +75,7 @@
        exec("nohup /usr/lib/mailman/bin/newlist -u ".escapeshellcmd($data["new"]["domain"])." -e ".escapeshellcmd($data["new"]["domain"])." ".escapeshellcmd($data["new"]["listname"])." ".escapeshellcmd($data["new"]["email"])." ".escapeshellcmd($data["new"]["password"])." >/dev/null 2>&1 &");
        if(is_file('/var/lib/mailman/data/virtual-mailman')) exec('postmap /var/lib/mailman/data/virtual-mailman');
        if(is_file('/var/lib/mailman/data/transport-mailman')) exec('postmap /var/lib/mailman/data/transport-mailman');
        exec('nohup '.$conf['init_scripts'] . '/' . 'mailman reload >/dev/null 2>&1 &');
        $app->db->query("UPDATE mail_mailinglist SET password = '' WHERE mailinglist_id = ".$app->db->quote($data["new"]['mailinglist_id']));
@@ -84,12 +85,17 @@
    // The purpose of this plugin is to rewrite the main.cf file
    function update($event_name, $data) {
        global $app, $conf;
        $this->update_config();
        if($data["new"]["password"] != $data["old"]["password"] && $data["new"]["password"] != '') {
            exec("nohup /usr/lib/mailman/bin/change_pw -l ".escapeshellcmd($data["new"]["listname"])." -p ".escapeshellcmd($data["new"]["password"])." >/dev/null 2>&1 &");
            exec('nohup '.$conf['init_scripts'] . '/' . 'mailman reload >/dev/null 2>&1 &');
            $app->db->query("UPDATE mail_mailinglist SET password = '' WHERE mailinglist_id = ".$app->db->quote($data["new"]['mailinglist_id']));
        }
        if(is_file('/var/lib/mailman/data/virtual-mailman')) exec('postmap /var/lib/mailman/data/virtual-mailman');
        if(is_file('/var/lib/mailman/data/transport-mailman')) exec('postmap /var/lib/mailman/data/transport-mailman');
    }
    function delete($event_name, $data) {
@@ -100,6 +106,9 @@
        exec("nohup /usr/lib/mailman/bin/rmlist -a ".escapeshellcmd($data["old"]["listname"])." >/dev/null 2>&1 &");
        exec('nohup '.$conf['init_scripts'] . '/' . 'mailman reload >/dev/null 2>&1 &');
        if(is_file('/var/lib/mailman/data/virtual-mailman')) exec('postmap /var/lib/mailman/data/virtual-mailman');
        if(is_file('/var/lib/mailman/data/transport-mailman')) exec('postmap /var/lib/mailman/data/transport-mailman');
    }
server/plugins-available/nginx_plugin.inc.php
@@ -643,9 +643,9 @@
                if(is_file($conf['rootpath'] . '/conf-custom/index/robots.txt')) {
                    exec('cp ' . $conf['rootpath'] . '/conf-custom/index/robots.txt '.escapeshellcmd($data['new']['document_root']).'/' . $web_folder . '/');
                }
                if(is_file($conf['rootpath'] . '/conf-custom/index/.htaccess')) {
                    exec('cp ' . $conf['rootpath'] . '/conf-custom/index/.htaccess '.escapeshellcmd($data['new']['document_root']).'/' . $web_folder . '/');
                }
                //if(is_file($conf['rootpath'] . '/conf-custom/index/.htaccess')) {
                //    exec('cp ' . $conf['rootpath'] . '/conf-custom/index/.htaccess '.escapeshellcmd($data['new']['document_root']).'/' . $web_folder . '/');
                //}
            }
            else {
                if (file_exists($conf['rootpath'] . '/conf-custom/index/standard_index.html')) {
@@ -655,7 +655,7 @@
                    exec('cp ' . $conf['rootpath'] . '/conf/index/standard_index.html_'.substr(escapeshellcmd($conf['language']), 0, 2).' '.escapeshellcmd($data['new']['document_root']).'/' . $web_folder . '/index.html');
                    if(is_file($conf['rootpath'] . '/conf/index/favicon.ico')) exec('cp ' . $conf['rootpath'] . '/conf/index/favicon.ico '.escapeshellcmd($data['new']['document_root']).'/' . $web_folder . '/');
                    if(is_file($conf['rootpath'] . '/conf/index/robots.txt')) exec('cp ' . $conf['rootpath'] . '/conf/index/robots.txt '.escapeshellcmd($data['new']['document_root']).'/' . $web_folder . '/');
                    if(is_file($conf['rootpath'] . '/conf/index/.htaccess')) exec('cp ' . $conf['rootpath'] . '/conf/index/.htaccess '.escapeshellcmd($data['new']['document_root']).'/' . $web_folder . '/');
                    //if(is_file($conf['rootpath'] . '/conf/index/.htaccess')) exec('cp ' . $conf['rootpath'] . '/conf/index/.htaccess '.escapeshellcmd($data['new']['document_root']).'/' . $web_folder . '/');
                }
            }
            exec('chmod -R a+r '.escapeshellcmd($data['new']['document_root']).'/' . $web_folder . '/');
server/plugins-available/shelluser_base_plugin.inc.php
@@ -58,19 +58,25 @@
        /*
        Register for the events
        */
        $app->plugins->registerEvent('shell_user_insert', $this->plugin_name, 'insert');
        $app->plugins->registerEvent('shell_user_update', $this->plugin_name, 'update');
        $app->plugins->registerEvent('shell_user_delete', $this->plugin_name, 'delete');
    }
    function insert($event_name, $data) {
        global $app, $conf;
        $app->uses('system');
        $app->uses('system,getconf');
        $security_config = $app->getconf->get_security_config('permissions');
        if($security_config['allow_shell_user'] != 'yes') {
            $app->log('Shell user plugin disabled by security settings.',LOGLEVEL_WARN);
            return false;
        }
        //* Check if the resulting path is inside the docroot
        $web = $app->db->queryOneRecord("SELECT * FROM web_domain WHERE domain_id = ".intval($data['new']['parent_domain_id']));
@@ -92,12 +98,17 @@
        if($app->system->is_user($data['new']['puser'])) {
            //* Remove webfolder protection
            $app->system->web_folder_protection($web['document_root'], false);
            // Get the UID of the parent user
            $uid = intval($app->system->getuid($data['new']['puser']));
            if($uid > $this->min_uid) {
                //* Remove webfolder protection
                $app->system->web_folder_protection($web['document_root'], false);
                if(!is_dir($data['new']['dir'])){
                    $app->file->mkdirs(escapeshellcmd($data['new']['dir']), '0700');
                    $app->system->chown(escapeshellcmd($data['new']['dir']),escapeshellcmd($data['new']['username']));
                    $app->system->chgrp(escapeshellcmd($data['new']['dir']),escapeshellcmd($data['new']['pgroup']));
                }
                $command = 'useradd';
                $command .= ' -d '.escapeshellcmd($data['new']['dir']);
                $command .= ' -g '.escapeshellcmd($data['new']['pgroup']);
@@ -132,7 +143,6 @@
                //* Add webfolder protection again
                $app->system->web_folder_protection($web['document_root'], true);
            } else {
                $app->log("UID = $uid for shelluser:".$data['new']['username']." not allowed.", LOGLEVEL_ERROR);
            }
@@ -144,7 +154,13 @@
    function update($event_name, $data) {
        global $app, $conf;
        $app->uses('system');
        $app->uses('system,getconf');
        $security_config = $app->getconf->get_security_config('permissions');
        if($security_config['allow_shell_user'] != 'yes') {
            $app->log('Shell user plugin disabled by security settings.',LOGLEVEL_WARN);
            return false;
        }
        //* Check if the resulting path is inside the docroot
        $web = $app->db->queryOneRecord("SELECT * FROM web_domain WHERE domain_id = ".intval($data['new']['parent_domain_id']));
@@ -223,15 +239,60 @@
    function delete($event_name, $data) {
        global $app, $conf;
        $app->uses('system');
        $app->uses('system,getconf');
        $security_config = $app->getconf->get_security_config('permissions');
        if($security_config['allow_shell_user'] != 'yes') {
            $app->log('Shell user plugin disabled by security settings.',LOGLEVEL_WARN);
            return false;
        }
        if($app->system->is_user($data['old']['username'])) {
            // Get the UID of the user
            $userid = intval($app->system->getuid($data['old']['username']));
            if($userid > $this->min_uid) {
                // check if we have to delete the dir
                $check = $app->db->queryOneRecord('SELECT shell_user_id FROM `shell_user` WHERE `dir` = \'' . $app->db->quote($data['old']['dir']) . '\'');
                if(!$check && is_dir($data['old']['dir'])) {
                    $web = $app->db->queryOneRecord("SELECT * FROM web_domain WHERE domain_id = ".intval($data['old']['parent_domain_id']));
                    $app->system->web_folder_protection($web['document_root'], false);
                    // delete dir
                    $homedir = $data['old']['dir'];
                    if(substr($homedir, -1) !== '/') $homedir .= '/';
                    $files = array('.bash_logout', '.bash_history', '.bashrc', '.profile');
                    $dirs = array('.ssh', '.cache');
                    foreach($files as $delfile) {
                        if(is_file($homedir . $delfile) && fileowner($homedir . $delfile) == $userid) unlink($homedir . $delfile);
                    }
                    foreach($dirs as $deldir) {
                        if(is_dir($homedir . $deldir) && fileowner($homedir . $deldir) == $userid) exec('rm -rf ' . escapeshellarg($homedir . $deldir));
                    }
                    $empty = true;
                    $dirres = opendir($homedir);
                    if($dirres) {
                        while(($entry = readdir($dirres)) !== false) {
                            if($entry != '.' && $entry != '..') {
                                $empty = false;
                                break;
                            }
                        }
                        closedir($dirres);
                    }
                    if($empty == true) {
                        rmdir($homedir);
                    }
                    unset($files);
                    unset($dirs);
                    $app->system->web_folder_protection($web['document_root'], true);
                }
                // We delete only non jailkit users, jailkit users will be deleted by the jailkit plugin.
                if ($data['old']['chroot'] != "jailkit") {
                    $command = 'userdel -f';
                    $command = 'killall -u '.escapeshellcmd($data['old']['username']).' ; userdel -f';
                    $command .= ' '.escapeshellcmd($data['old']['username']).' &> /dev/null';
                    exec($command);
                    $app->log("Deleted shelluser: ".$data['old']['username'], LOGLEVEL_DEBUG);
server/plugins-available/shelluser_jailkit_plugin.inc.php
@@ -59,11 +59,11 @@
        /*
        Register for the events
        */
        $app->plugins->registerEvent('shell_user_insert', $this->plugin_name, 'insert');
        $app->plugins->registerEvent('shell_user_update', $this->plugin_name, 'update');
        $app->plugins->registerEvent('shell_user_delete', $this->plugin_name, 'delete');
    }
@@ -71,7 +71,15 @@
    function insert($event_name, $data) {
        global $app, $conf;
        $app->uses('system');
        $app->uses('system,getconf');
        $security_config = $app->getconf->get_security_config('permissions');
        if($security_config['allow_shell_user'] != 'yes') {
            $app->log('Shell user plugin disabled by security settings.',LOGLEVEL_WARN);
            return false;
        }
        $web = $app->db->queryOneRecord("SELECT * FROM web_domain WHERE domain_id = ".$data['new']['parent_domain_id']);
        if(!$app->system->is_allowed_user($data['new']['username'], false, false)
@@ -143,7 +151,14 @@
    function update($event_name, $data) {
        global $app, $conf;
        $app->uses('system');
        $app->uses('system,getconf');
        $security_config = $app->getconf->get_security_config('permissions');
        if($security_config['allow_shell_user'] != 'yes') {
            $app->log('Shell user plugin disabled by security settings.',LOGLEVEL_WARN);
            return false;
        }
        $web = $app->db->queryOneRecord("SELECT * FROM web_domain WHERE domain_id = ".$data['new']['parent_domain_id']);
        if(!$app->system->is_allowed_user($data['new']['username'], false, false)
@@ -209,7 +224,13 @@
    function delete($event_name, $data) {
        global $app, $conf;
        $app->uses('system');
        $app->uses('system,getconf');
        $security_config = $app->getconf->get_security_config('permissions');
        if($security_config['allow_shell_user'] != 'yes') {
            $app->log('Shell user plugin disabled by security settings.',LOGLEVEL_WARN);
            return false;
        }
        $web = $app->db->queryOneRecord("SELECT * FROM web_domain WHERE domain_id = ".$data['old']['parent_domain_id']);
@@ -226,9 +247,13 @@
            $app->system->web_folder_protection($web['document_root'], false);
            if(@is_dir($data['old']['dir'].$jailkit_chroot_userhome)) {
                $command = 'userdel -f';
                $userid = intval($app->system->getuid($data['old']['username']));
                $command = 'killall -u '.escapeshellcmd($data['old']['username']).' ; userdel -f';
                $command .= ' '.escapeshellcmd($data['old']['username']).' &> /dev/null';
                exec($command);
                $this->_delete_homedir($data['old']['dir'].$jailkit_chroot_userhome,$userid,$data['old']['parent_domain_id']);
                $app->log("Jailkit Plugin -> delete chroot home:".$data['old']['dir'].$jailkit_chroot_userhome, LOGLEVEL_DEBUG);
            }
@@ -502,6 +527,48 @@
        exec("chmod 600 '$sshkeys'");
    }
    private function _delete_homedir($homedir,$userid,$parent_domain_id) {
        global $app, $conf;
        // check if we have to delete the dir
                $check = $app->db->queryOneRecord('SELECT shell_user_id FROM `shell_user` WHERE `dir` = \'' . $app->db->quote($homedir) . '\'');
                if(!$check && is_dir($homedir)) {
                    $web = $app->db->queryOneRecord("SELECT * FROM web_domain WHERE domain_id = ".intval($parent_domain_id));
                    $app->system->web_folder_protection($web['document_root'], false);
                    // delete dir
                    if(substr($homedir, -1) !== '/') $homedir .= '/';
                    $files = array('.bash_logout', '.bash_history', '.bashrc', '.profile');
                    $dirs = array('.ssh', '.cache');
                    foreach($files as $delfile) {
                        if(is_file($homedir . $delfile) && fileowner($homedir . $delfile) == $userid) unlink($homedir . $delfile);
                    }
                    foreach($dirs as $deldir) {
                        if(is_dir($homedir . $deldir) && fileowner($homedir . $deldir) == $userid) exec('rm -rf ' . escapeshellarg($homedir . $deldir));
                    }
                    $empty = true;
                    $dirres = opendir($homedir);
                    if($dirres) {
                        while(($entry = readdir($dirres)) !== false) {
                            if($entry != '.' && $entry != '..') {
                                $empty = false;
                                break;
                            }
                        }
                        closedir($dirres);
                    }
                    if($empty == true) {
                        rmdir($homedir);
                    }
                    unset($files);
                    unset($dirs);
                    $app->system->web_folder_protection($web['document_root'], true);
                }
    }
} // end class
server/scripts/ispconfig_htaccess.php
New file
@@ -0,0 +1,76 @@
<?php
/*
Copyright (c) 2014, 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.
*/
$path = realpath(dirname(__FILE__) . '/..');
$iface_path = realpath(dirname(__FILE__) . '/../../interface/web');
$iface_base_path = realpath(dirname(__FILE__) . '/../../interface');
require $path . '/lib/mysql_clientdb.conf';
if(isset($argv[1])) $dbname = $argv[1];
else $dbname = 'dbispconfig';
if(!preg_match('/^[a-zA-Z0-9]+$/', $dbname)) die("Invalid database name\n");
$link = mysqli_init();
$con = mysqli_real_connect($link, $clientdb_host, $clientdb_user, $clientdb_password, $dbname);
if(!$con) die('DB CON ERROR' . "\n");
$qry = "SELECT username, passwort FROM sys_user WHERE active = '1'";
$result = mysqli_query($link, $qry);
if(!$result) die('Could not read users' . "\n");
$cont = '';
while($row = mysqli_fetch_assoc($result)) {
    $cont .= $row['username'] . ':' . $row['passwort'] . "\n";
}
mysqli_free_result($result);
mysqli_close($link);
if($cont == '') die('No users found' . "\n");
if(file_exists($iface_base_path . '/.htpasswd')) rename($iface_base_path . '/.htpasswd', $iface_base_path . '/.htpasswd.old');
file_put_contents($iface_base_path . '/.htpasswd', $cont);
chmod($iface_base_path . '/.htpasswd', 0644);
$cont = 'AuthType Basic
AuthName "Login"
AuthUserFile ' . $iface_base_path . '/.htpasswd
require valid-user';
if(file_exists($iface_path . '/.htaccess')) rename($iface_path . '/.htaccess', $iface_path . '/.htaccess.old');
file_put_contents($iface_path . '/.htaccess', $cont);
chmod($iface_path . '/.htaccess', 0644);
unset($cont);
print 'Data written. Please check, if everything is working correctly.' . "\n";
exit;
?>
server/server.sh
@@ -15,3 +15,6 @@
cd /usr/local/ispconfig/server
/usr/bin/php -q /usr/local/ispconfig/server/server.php
cd /usr/local/ispconfig/security
/usr/bin/php -q /usr/local/ispconfig/security/check.php