From 379a4b6e00774030f6f9f9763222c7d6f96ecfc4 Mon Sep 17 00:00:00 2001 From: tbrehm <t.brehm@ispconfig.org> Date: Tue, 22 Jun 2010 07:33:29 -0400 Subject: [PATCH] Added configuration fields for awstats support in the ispconfig interface. --- interface/web/admin/templates/server_config_web_edit.htm | 16 +++ interface/web/mail/templates/mail_domain_admin_list.htm | 58 +++++++++++ interface/web/mail/lib/lang/en_mail_domain_admin_list.lng | 8 + interface/web/sites/lib/lang/en_web_domain.lng | 2 interface/web/admin/lib/lang/en_server_config.lng | 4 interface/web/sites/templates/web_domain_admin_list.htm | 61 ++++++++++++ install/tpl/server.ini.master | 4 interface/web/admin/form/server_config.tform.php | 32 ++++++ interface/web/sites/lib/lang/en_web_domain_admin_list.lng | 9 + interface/web/sites/templates/web_domain_stats.htm | 11 ++ install/sql/ispconfig3.sql | 3 interface/web/sites/templates/database_admin_list.htm | 64 ++++++++++++ interface/web/sites/form/web_domain.tform.php | 6 + interface/web/sites/lib/lang/en_database_admin_list.lng | 10 ++ 14 files changed, 286 insertions(+), 2 deletions(-) diff --git a/install/sql/ispconfig3.sql b/install/sql/ispconfig3.sql index beab740..227b014 100644 --- a/install/sql/ispconfig3.sql +++ b/install/sql/ispconfig3.sql @@ -1,6 +1,6 @@ /* -Copyright (c) 2007-2009, Till Brehm, projektfarm Gmbh +Copyright (c) 2007-2010, Till Brehm, projektfarm Gmbh All rights reserved. Redistribution and use in source and binary forms, with or without modification, @@ -1079,6 +1079,7 @@ `ssl_bundle` mediumtext NULL, `ssl_action` varchar(16) NULL, `stats_password` varchar(255) default NULL, + `stats_type` varchar(255) default 'webalizer', `allow_override` varchar(255) NOT NULL default 'All', `apache_directives` text, `php_open_basedir` text, diff --git a/install/tpl/server.ini.master b/install/tpl/server.ini.master index b52280b..747b9c6 100644 --- a/install/tpl/server.ini.master +++ b/install/tpl/server.ini.master @@ -46,6 +46,10 @@ apps_vhost_servername= php_open_basedir=[website_path]/web:[website_path]/tmp:/var/www/[website_domain]/web:/srv/www/[website_domain]/web:/usr/share/php5:/tmp:/usr/share/phpmyadmin:/etc/phpmyadmin:/var/lib/phpmyadmin htaccess_allow_override=All +awstats_conf_dir=/etc/awstats +awstats_data_dir=/var/lib/awstats +awstats_pl=/usr/lib/cgi-bin/awstats.pl +awstats_updateall_pl=/usr/share/doc/awstats/examples/awstats_updateall.pl [dns] bind_user=root diff --git a/interface/web/admin/form/server_config.tform.php b/interface/web/admin/form/server_config.tform.php index 631df03..15415aa 100644 --- a/interface/web/admin/form/server_config.tform.php +++ b/interface/web/admin/form/server_config.tform.php @@ -439,6 +439,38 @@ 'width' => '40', 'maxlength' => '255' ), + 'awstats_conf_dir' => array ( + 'datatype' => 'VARCHAR', + 'formtype' => 'TEXT', + 'default' => '', + 'value' => '', + 'width' => '40', + 'maxlength' => '255' + ), + 'awstats_data_dir' => array ( + 'datatype' => 'VARCHAR', + 'formtype' => 'TEXT', + 'default' => '', + 'value' => '', + 'width' => '40', + 'maxlength' => '255' + ), + 'awstats_pl' => array ( + 'datatype' => 'VARCHAR', + 'formtype' => 'TEXT', + 'default' => '', + 'value' => '', + 'width' => '40', + 'maxlength' => '255' + ), + 'awstats_updateall_pl' => array ( + 'datatype' => 'VARCHAR', + 'formtype' => 'TEXT', + 'default' => '', + 'value' => '', + 'width' => '40', + 'maxlength' => '255' + ), ################################## # ENDE Datatable fields ################################## diff --git a/interface/web/admin/lib/lang/en_server_config.lng b/interface/web/admin/lib/lang/en_server_config.lng index 603245d..0a122e3 100644 --- a/interface/web/admin/lib/lang/en_server_config.lng +++ b/interface/web/admin/lib/lang/en_server_config.lng @@ -65,4 +65,8 @@ $wb["php_open_basedir_error_empty"] = 'PHP open_basedir is empty.'; $wb["htaccess_allow_override_txt"] = '.htaccess AllowOverride'; $wb["htaccess_allow_override_error_empty"] = '.htaccess AllowOverride is empty.'; +$wb["awstats_conf_dir_txt"] = 'awstats conf folder'; +$wb["awstats_data_dir_txt"] = 'awstats data folder'; +$wb["awstats_pl_txt"] = 'awstats.pl script'; +$wb["awstats_updateall_pl_txt"] = 'awstats_updateall script'; ?> \ No newline at end of file diff --git a/interface/web/admin/templates/server_config_web_edit.htm b/interface/web/admin/templates/server_config_web_edit.htm index cfe9c7e..83d3bbb 100644 --- a/interface/web/admin/templates/server_config_web_edit.htm +++ b/interface/web/admin/templates/server_config_web_edit.htm @@ -61,6 +61,22 @@ <label for="apps_vhost_servername">{tmpl_var name='apps_vhost_servername_txt'}</label> <input name="apps_vhost_servername" id="apps_vhost_servername" value="{tmpl_var name='apps_vhost_servername'}" size="40" maxlength="255" type="text" class="textInput" /> </div> + <div class="ctrlHolder"> + <label for="awstats_conf_dir">{tmpl_var name='awstats_conf_dir_txt'}</label> + <input name="awstats_conf_dir" id="awstats_conf_dir" value="{tmpl_var name='awstats_conf_dir'}" size="40" maxlength="255" type="text" class="textInput" /> + </div> + <div class="ctrlHolder"> + <label for="awstats_data_dir">{tmpl_var name='awstats_data_dir_txt'}</label> + <input name="awstats_data_dir" id="awstats_data_dir" value="{tmpl_var name='awstats_data_dir'}" size="40" maxlength="255" type="text" class="textInput" /> + </div> + <div class="ctrlHolder"> + <label for="awstats_pl">{tmpl_var name='awstats_pl_txt'}</label> + <input name="awstats_pl" id="awstats_pl" value="{tmpl_var name='awstats_pl'}" size="40" maxlength="255" type="text" class="textInput" /> + </div> + <div class="ctrlHolder"> + <label for="awstats_updateall_pl">{tmpl_var name='awstats_updateall_pl_txt'}</label> + <input name="awstats_updateall_pl" id="awstats_updateall_pl" value="{tmpl_var name='awstats_updateall_pl'}" size="40" maxlength="255" type="text" class="textInput" /> + </div> </fieldset> <input type="hidden" name="id" value="{tmpl_var name='id'}"> diff --git a/interface/web/mail/lib/lang/en_mail_domain_admin_list.lng b/interface/web/mail/lib/lang/en_mail_domain_admin_list.lng new file mode 100644 index 0000000..03350cf --- /dev/null +++ b/interface/web/mail/lib/lang/en_mail_domain_admin_list.lng @@ -0,0 +1,8 @@ +<?php +$wb["list_head_txt"] = 'Email Domain'; +$wb["server_id_txt"] = 'Server'; +$wb["domain_txt"] = 'Domain'; +$wb["add_new_record_txt"] = 'Add new Domain'; +$wb["active_txt"] = 'Active'; +$wb["sys_groupid_txt"] = 'Client'; +?> \ No newline at end of file diff --git a/interface/web/mail/templates/mail_domain_admin_list.htm b/interface/web/mail/templates/mail_domain_admin_list.htm new file mode 100644 index 0000000..b0e14e5 --- /dev/null +++ b/interface/web/mail/templates/mail_domain_admin_list.htm @@ -0,0 +1,58 @@ +<h2><tmpl_var name="list_head_txt"></h2> + +<div class="panel panel_list_mail_domain_admin"> + + <div class="pnl_toolsarea"> + <fieldset><legend>{tmpl_var name="toolsarea_head_txt"}</legend> + <div class="buttons"> + <button class="iconstxt icoAdd" type="button" onClick="loadContent('mail/mail_domain_edit.php');"> + <span>{tmpl_var name="add_new_record_txt"}</span> + </button> + </div> + </fieldset> + </div> + + <div class="pnl_listarea"> + <fieldset><legend><tmpl_var name="list_head_txt"></legend> + <table class="list"> + <thead> + <tr> + <th class="tbl_col_active" scope="col"><tmpl_var name="active_txt"></th> + <th class="tbl_col_sys_groupid" scope="col"><tmpl_var name="sys_groupid_txt"></th> + <th class="tbl_col_server_id" scope="col"><tmpl_var name="server_id_txt"></th> + <th class="tbl_col_domain" scope="col"><tmpl_var name="domain_txt"></th> + <th class="tbl_col_buttons" scope="col"> </th> + </tr> + <tr> + <td class="tbl_col_active"><select name="search_active" onChange="submitForm('pageForm','mail/mail_domain_list.php');">{tmpl_var name='search_active'}</select></td> + <td class="tbl_col_sys_groupid"><select name="search_sys_groupid" onChange="submitForm('pageForm','mail/mail_domain_list.php');">{tmpl_var name='search_sys_groupid'}</select></td> + <td class="tbl_col_server_id"><select name="search_server_id" onChange="submitForm('pageForm','mail/mail_domain_list.php');">{tmpl_var name='search_server_id'}</select></td> + <td class="tbl_col_domain"><input type="text" name="search_domain" value="{tmpl_var name='search_domain'}" /></td> + <td class="tbl_col_buttons"><div class="buttons"><button type="button" class="icons16 icoFilter" name="Filter" id="Filter" value="{tmpl_var name="filter_txt"}" onClick="submitForm('pageForm','mail/mail_domain_list.php');"><span>{tmpl_var name="filter_txt"}</span></button></div></td> + </tr> + </thead> + <tbody> + <tmpl_loop name="records"> + <tr class="tbl_row_<tmpl_if name='__EVEN__'}even<tmpl_else>uneven</tmpl_if>"> + <td class="tbl_col_active"><a href="#" onClick="loadContent('mail/mail_domain_edit.php?id={tmpl_var name='id'}');">{tmpl_var name="active"}</a></td> + <td class="tbl_col_sys_groupid"><a href="#" onClick="loadContent('mail/mail_domain_edit.php?id={tmpl_var name='id'}');">{tmpl_var name="sys_groupid"}</a></td> + <td class="tbl_col_server_id"><a href="#" onClick="loadContent('mail/mail_domain_edit.php?id={tmpl_var name='id'}');">{tmpl_var name="server_id"}</a></td> + <td class="tbl_col_domain"><a href="#" onClick="loadContent('mail/mail_domain_edit.php?id={tmpl_var name='id'}');">{tmpl_var name="domain"}</a></td> + <td class="tbl_col_buttons"> + <div class="buttons icons16"> + <a class="icons16 icoDelete" href="javascript: del_record('mail/mail_domain_del.php?id={tmpl_var name='id'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span>{tmpl_var name='delete_txt'}</span></a> + </div> + </td> + </tr> + </tmpl_loop> + </tbody> + <tfoot> + <tr> + <td class="tbl_footer tbl_paging" colspan="5"><tmpl_var name="paging"></td> + </tr> + </tfoot> + </table> + </fieldset> + </div> + +</div> diff --git a/interface/web/sites/form/web_domain.tform.php b/interface/web/sites/form/web_domain.tform.php index 9d7a1c1..2c3d80e 100644 --- a/interface/web/sites/form/web_domain.tform.php +++ b/interface/web/sites/form/web_domain.tform.php @@ -377,6 +377,12 @@ 'width' => '30', 'maxlength' => '255' ), + 'stats_type' => array ( + 'datatype' => 'VARCHAR', + 'formtype' => 'SELECT', + 'default' => 'y', + 'value' => array('webalizer' => 'Webalizer', 'awstats' => 'AWStats') + ), ################################## # ENDE Datatable fields ################################## diff --git a/interface/web/sites/lib/lang/en_database_admin_list.lng b/interface/web/sites/lib/lang/en_database_admin_list.lng new file mode 100644 index 0000000..d076d60 --- /dev/null +++ b/interface/web/sites/lib/lang/en_database_admin_list.lng @@ -0,0 +1,10 @@ +<?php +$wb["list_head_txt"] = 'Database'; +$wb["active_txt"] = 'Active'; +$wb["remote_access_txt"] = 'Remote Access'; +$wb["server_id_txt"] = 'Server'; +$wb["database_user_txt"] = 'Database user'; +$wb["database_name_txt"] = 'Database name'; +$wb["add_new_record_txt"] = 'Add new Database'; +$wb["sys_groupid_txt"] = 'Client'; +?> \ No newline at end of file diff --git a/interface/web/sites/lib/lang/en_web_domain.lng b/interface/web/sites/lib/lang/en_web_domain.lng index 84ae4d0..bdf46fa 100644 --- a/interface/web/sites/lib/lang/en_web_domain.lng +++ b/interface/web/sites/lib/lang/en_web_domain.lng @@ -59,4 +59,6 @@ $wb["php_open_basedir_txt"] = 'PHP open_basedir'; $wb["traffic_quota_exceeded_txt"] = 'Traffic quota exceeded'; $wb["ruby_txt"] = 'Ruby'; +$wb["stats_user_txt"] = 'Webstatistics username'; +$wb["stats_type_txt"] = 'Webstatistics program'; ?> diff --git a/interface/web/sites/lib/lang/en_web_domain_admin_list.lng b/interface/web/sites/lib/lang/en_web_domain_admin_list.lng new file mode 100644 index 0000000..f8b37f4 --- /dev/null +++ b/interface/web/sites/lib/lang/en_web_domain_admin_list.lng @@ -0,0 +1,9 @@ +<?php +$wb["sys_groupid_txt"] = 'Client'; +$wb["list_head_txt"] = 'Websites'; +$wb["domain_id_txt"] = 'ID'; +$wb["active_txt"] = 'Active'; +$wb["server_id_txt"] = 'Server'; +$wb["domain_txt"] = 'Domain'; +$wb["add_new_record_txt"] = 'Add new website'; +?> \ No newline at end of file diff --git a/interface/web/sites/templates/database_admin_list.htm b/interface/web/sites/templates/database_admin_list.htm new file mode 100644 index 0000000..bcd6b41 --- /dev/null +++ b/interface/web/sites/templates/database_admin_list.htm @@ -0,0 +1,64 @@ +<h2><tmpl_var name="list_head_txt"></h2> + +<div class="panel panel_list_database_admin"> + + <div class="pnl_toolsarea"> + <fieldset><legend>{tmpl_var name="toolsarea_head_txt"}</legend> + <div class="buttons"> + <button class="iconstxt icoAdd" type="button" onClick="loadContent('sites/database_edit.php');"> + <span>{tmpl_var name="add_new_record_txt"}</span> + </button> + </div> + </fieldset> + </div> + + <div class="pnl_listarea"> + <fieldset><legend><tmpl_var name="list_head_txt"></legend> + <table class="list"> + <thead> + <tr> + <th class="tbl_col_active" scope="col"><tmpl_var name="active_txt"></th> + <th class="tbl_col_remote_access" scope="col"><tmpl_var name="remote_access_txt"></th> + <th class="tbl_col_sys_groupid" scope="col"><tmpl_var name="sys_groupid_txt"></th> + <th class="tbl_col_server_id" scope="col"><tmpl_var name="server_id_txt"></th> + <th class="tbl_col_database_user" scope="col"><tmpl_var name="database_user_txt"></th> + <th class="tbl_col_database_name" scope="col"><tmpl_var name="database_name_txt"></th> + <th class="tbl_col_buttons" scope="col"> </th> + </tr> + <tr> + <td class="tbl_col_active"><select name="search_active" onChange="submitForm('pageForm','sites/database_list.php');">{tmpl_var name='search_active'}</select></td> + <td class="tbl_col_remote_access"><select name="search_remote_access" onChange="submitForm('pageForm','sites/database_list.php');">{tmpl_var name='search_remote_access'}</select></td> + <td class="tbl_col_sys_groupid"><select name="search_sys_groupid" onChange="submitForm('pageForm','sites/database_list.php');">{tmpl_var name='search_sys_groupid'}</select></td> + <td class="tbl_col_server_id"><select name="search_server_id" onChange="submitForm('pageForm','sites/database_list.php');">{tmpl_var name='search_server_id'}</select></td> + <td class="tbl_col_database_user"><input type="text" name="search_database_user" value="{tmpl_var name='search_database_user'}" /></td> + <td class="tbl_col_database_name"><input type="text" name="search_database_name" value="{tmpl_var name='search_database_name'}" /></td> + <td class="tbl_col_buttons"><div class="buttons"><button type="button" class="icons16 icoFilter" name="Filter" id="Filter" value="{tmpl_var name="filter_txt"}" onClick="submitForm('pageForm','sites/database_list.php');"><span>{tmpl_var name="filter_txt"}</span></button></div></td> + </tr> + </thead> + <tbody> + <tmpl_loop name="records"> + <tr class="tbl_row_<tmpl_if name='__EVEN__'}even<tmpl_else>uneven</tmpl_if>"> + <td class="tbl_col_active"><a href="#" onClick="loadContent('sites/database_edit.php?id={tmpl_var name='id'}');">{tmpl_var name="active"}</a></td> + <td class="tbl_col_remote_access"><a href="#" onClick="loadContent('sites/database_edit.php?id={tmpl_var name='id'}');">{tmpl_var name="remote_access"}</a></td> + <td class="tbl_col_sys_groupid"><a href="#" onClick="loadContent('sites/database_edit.php?id={tmpl_var name='id'}');">{tmpl_var name="sys_groupid"}</a></td> + <td class="tbl_col_server_id"><a href="#" onClick="loadContent('sites/database_edit.php?id={tmpl_var name='id'}');">{tmpl_var name="server_id"}</a></td> + <td class="tbl_col_database_user"><a href="#" onClick="loadContent('sites/database_edit.php?id={tmpl_var name='id'}');">{tmpl_var name="database_user"}</a></td> + <td class="tbl_col_database_name"><a href="#" onClick="loadContent('sites/database_edit.php?id={tmpl_var name='id'}');">{tmpl_var name="database_name"}</a></td> + <td class="tbl_col_buttons"> + <div class="buttons icons16"> + <a class="icons16 icoDelete" href="javascript: del_record('sites/database_del.php?id={tmpl_var name='id'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span>{tmpl_var name='delete_txt'}</span></a> + </div> + </td> + </tr> + </tmpl_loop> + </tbody> + <tfoot> + <tr> + <td class="tbl_footer tbl_paging" colspan="7"><tmpl_var name="paging"></td> + </tr> + </tfoot> + </table> + </fieldset> + </div> + +</div> diff --git a/interface/web/sites/templates/web_domain_admin_list.htm b/interface/web/sites/templates/web_domain_admin_list.htm new file mode 100644 index 0000000..7290f1f --- /dev/null +++ b/interface/web/sites/templates/web_domain_admin_list.htm @@ -0,0 +1,61 @@ +<h2><tmpl_var name="list_head_txt"></h2> + +<div class="panel panel_list_web_domain_admin"> + + <div class="pnl_toolsarea"> + <fieldset><legend>{tmpl_var name="toolsarea_head_txt"}</legend> + <div class="buttons"> + <button class="iconstxt icoAdd" type="button" onClick="loadContent('sites/web_domain_edit.php');"> + <span>{tmpl_var name="add_new_record_txt"}</span> + </button> + </div> + </fieldset> + </div> + + <div class="pnl_listarea"> + <fieldset><legend><tmpl_var name="list_head_txt"></legend> + <table class="list"> + <thead> + <tr> + <th class="tbl_col_domain_id" scope="col"><tmpl_var name="domain_id_txt"></th> + <th class="tbl_col_active" scope="col"><tmpl_var name="active_txt"></th> + <th class="tbl_col_sys_groupid" scope="col"><tmpl_var name="sys_groupid_txt"></th> + <th class="tbl_col_server_id" scope="col"><tmpl_var name="server_id_txt"></th> + <th class="tbl_col_domain" scope="col"><tmpl_var name="domain_txt"></th> + <th class="tbl_col_buttons" scope="col"> </th> + </tr> + <tr> + <td class="tbl_col_domain_id"><input type="text" name="search_domain_id" size="4" value="{tmpl_var name='search_domain_id'}" /></td> + <td class="tbl_col_active"><select name="search_active" onChange="submitForm('pageForm','sites/web_domain_list.php');">{tmpl_var name='search_active'}</select></td> + <td class="tbl_col_sys_groupid"><select name="search_sys_groupid" onChange="submitForm('pageForm','sites/web_domain_list.php');">{tmpl_var name='search_sys_groupid'}</select></td> + <td class="tbl_col_server_id"><select name="search_server_id" onChange="submitForm('pageForm','sites/web_domain_list.php');">{tmpl_var name='search_server_id'}</select></td> + <td class="tbl_col_domain"><input type="text" name="search_domain" value="{tmpl_var name='search_domain'}" /></td> + <td class="tbl_col_buttons"><div class="buttons"><button type="button" class="icons16 icoFilter" name="Filter" id="Filter" value="{tmpl_var name="filter_txt"}" onClick="submitForm('pageForm','sites/web_domain_list.php');"><span>{tmpl_var name="filter_txt"}</span></button></div></td> + </tr> + </thead> + <tbody> + <tmpl_loop name="records"> + <tr class="tbl_row_<tmpl_if name='__EVEN__'}even<tmpl_else>uneven</tmpl_if>"> + <td class="tbl_col_domain_id"><a href="#" onClick="loadContent('sites/web_domain_edit.php?id={tmpl_var name='id'}');">{tmpl_var name="domain_id"}</a></td> + <td class="tbl_col_active"><a href="#" onClick="loadContent('sites/web_domain_edit.php?id={tmpl_var name='id'}');">{tmpl_var name="active"}</a></td> + <td class="tbl_col_sys_groupid"><a href="#" onClick="loadContent('sites/web_domain_edit.php?id={tmpl_var name='id'}');">{tmpl_var name="sys_groupid"}</a></td> + <td class="tbl_col_server_id"><a href="#" onClick="loadContent('sites/web_domain_edit.php?id={tmpl_var name='id'}');">{tmpl_var name="server_id"}</a></td> + <td class="tbl_col_domain"><a href="#" onClick="loadContent('sites/web_domain_edit.php?id={tmpl_var name='id'}');">{tmpl_var name="domain"}</a></td> + <td class="tbl_col_buttons"> + <div class="buttons icons16"> + <a class="icons16 icoDelete" href="javascript: del_record('sites/web_domain_del.php?id={tmpl_var name='id'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span>{tmpl_var name='delete_txt'}</span></a> + </div> + </td> + </tr> + </tmpl_loop> + </tbody> + <tfoot> + <tr> + <td class="tbl_footer tbl_paging" colspan="6"><tmpl_var name="paging"></td> + </tr> + </tfoot> + </table> + </fieldset> + </div> + +</div> diff --git a/interface/web/sites/templates/web_domain_stats.htm b/interface/web/sites/templates/web_domain_stats.htm index 1c21657..48258e2 100644 --- a/interface/web/sites/templates/web_domain_stats.htm +++ b/interface/web/sites/templates/web_domain_stats.htm @@ -6,9 +6,18 @@ <div class="pnl_formsarea"> <fieldset class="inlineLabels"> <div class="ctrlHolder"> - <label for="redirect_path">{tmpl_var name='stats_password_txt'}</label> + <p>{tmpl_var name='stats_user_txt'}: admin</p> + </div> + <div class="ctrlHolder"> + <label for="stats_password">{tmpl_var name='stats_password_txt'}</label> <input name="stats_password" id="stats_password" value="{tmpl_var name='stats_password'}" size="30" maxlength="255" type="password" class="textInput" /> </div> + <div class="ctrlHolder"> + <label for="stats_type">{tmpl_var name='stats_type_txt'}</label> + <select name="stats_type" id="stats_type" class="selectInput" > + {tmpl_var name='stats_type'} + </select> + </div> </fieldset> <input type="hidden" name="id" value="{tmpl_var name='id'}"> -- Gitblit v1.9.1