2000-08-19 16:51:27 +02:00
< ? php
/************************************************************************** \
* phpGroupWare - administration *
* http :// www . phpgroupware . org *
* -------------------------------------------- *
* This program is free software ; you can redistribute it and / or modify it *
* under the terms of the GNU General Public License as published by the *
* Free Software Foundation ; either version 2 of the License , or ( at your *
* option ) any later version . *
\ **************************************************************************/
/* $Id$ */
2000-11-21 01:41:31 +01:00
$phpgw_info = array ();
2000-08-19 16:51:27 +02:00
if ( $submit ) {
2000-11-16 09:09:00 +01:00
$phpgw_info [ " flags " ] = array ( " noheader " => True , " nonavbar " => True );
2000-08-19 16:51:27 +02:00
}
2000-12-26 06:30:40 +01:00
2000-11-16 09:09:00 +01:00
$phpgw_info [ " flags " ][ " currentapp " ] = " admin " ;
2000-12-26 06:30:40 +01:00
$phpgw_info [ " flags " ][ " enable_nextmatchs_class " ] = True ;
2001-02-09 06:04:21 +01:00
2000-08-19 16:51:27 +02:00
include ( " ../header.inc.php " );
2000-08-20 04:56:02 +02:00
2001-02-09 06:04:21 +01:00
$p = CreateObject ( 'phpgwapi.Template' , $phpgw -> common -> get_tpl_dir ( 'admin' ));
2000-12-26 06:30:40 +01:00
function display_row ( $label , $value )
{
2001-02-09 06:04:21 +01:00
global $phpgw , $p ;
$p -> set_var ( " tr_color " , $phpgw -> nextmatchs -> alternate_row_color ());
$p -> set_var ( " label " , $label );
$p -> set_var ( " value " , $value );
2000-12-26 06:30:40 +01:00
2001-02-09 06:04:21 +01:00
$p -> parse ( " rows " , " row " , True );
2000-12-26 06:30:40 +01:00
}
2001-02-09 06:04:21 +01:00
$p -> set_file ( array (
" form " => " application_form.tpl " ,
" row " => " application_form_row.tpl "
));
2000-08-20 04:56:02 +02:00
2000-08-19 16:51:27 +02:00
if ( $submit ) {
2000-12-26 06:30:40 +01:00
if ( ! $app_order ) {
$app_order = 0 ;
}
2000-11-22 07:28:49 +01:00
$totalerrors = 0 ;
2000-10-28 21:24:51 +02:00
if ( ! $n_app_name )
2000-11-22 07:28:49 +01:00
$error [ $totalerrors ++ ] = lang ( " You must enter an application name. " );
2000-10-28 21:24:51 +02:00
if ( ! $n_app_title )
2000-11-22 07:28:49 +01:00
$error [ $totalerrors ++ ] = lang ( " You must enter an application title. " );
2000-10-28 21:24:51 +02:00
if ( $old_app_name != $n_app_name ) {
2001-02-08 21:11:13 +01:00
$phpgw -> db -> query ( " select count(*) from phpgw_applications where app_name=' "
2000-11-13 13:00:47 +01:00
. addslashes ( $n_app_name ) . " ' " , __LINE__ , __FILE__ );
2000-10-28 21:24:51 +02:00
$phpgw -> db -> next_record ();
if ( $phpgw -> db -> f ( 0 ) != 0 ) {
2001-02-09 06:04:21 +01:00
$error [ $totalerrors ++ ] = lang ( " That application name already exists. " );
2000-10-28 21:24:51 +02:00
}
}
2001-02-09 06:04:21 +01:00
2000-11-22 07:28:49 +01:00
if ( ! $totalerrors ) {
2001-02-08 21:11:13 +01:00
$phpgw -> db -> query ( " update phpgw_applications set app_name=' " . addslashes ( $n_app_name ) . " ', "
2000-12-26 06:30:40 +01:00
. " app_title=' " . addslashes ( $n_app_title ) . " ', app_enabled=' "
. " $n_app_status ',app_order=' $app_order ' where app_name=' $old_app_name ' " , __LINE__ , __FILE__ );
2000-08-19 16:51:27 +02:00
2001-01-22 00:18:05 +01:00
if ( $n_app_anonymous ) {
$phpgw -> acl -> add ( $n_app_name , 'everywhere' , 0 , 'g' , PHPGW_ACL_READ );
} else {
$phpgw -> acl -> delete ( $n_app_name , 'everywhere' , 0 , 'g' );
}
2001-03-09 00:32:22 +01:00
Header ( " Location: " . $phpgw -> link ( " /admin/applications.php " ));
2000-12-23 23:50:32 +01:00
$phpgw -> common -> phpgw_exit ();
2000-08-19 16:51:27 +02:00
}
}
2001-02-08 21:11:13 +01:00
$phpgw -> db -> query ( " select * from phpgw_applications where app_name=' $app_name ' " , __LINE__ , __FILE__ );
2000-08-19 16:51:27 +02:00
$phpgw -> db -> next_record ();
2000-11-22 07:28:49 +01:00
if ( $totalerrors ) {
2000-09-28 17:01:11 +02:00
$phpgw -> common -> phpgw_header ();
2001-01-06 05:11:13 +01:00
echo parse_navbar ();
2000-08-20 04:56:02 +02:00
2001-02-09 06:04:21 +01:00
$p -> set_var ( " error " , " <p><center> " . $phpgw -> common -> error_list ( $error ) . " </center><br> " );
2000-08-20 04:56:02 +02:00
} else {
2001-02-09 06:04:21 +01:00
$p -> set_var ( " error " , " " );
2000-10-28 21:24:51 +02:00
2000-11-13 13:00:47 +01:00
$n_app_name = $phpgw -> db -> f ( " app_name " );
$n_app_title = $phpgw -> db -> f ( " app_title " );
$n_app_status = $phpgw -> db -> f ( " app_enabled " );
$old_app_name = $phpgw -> db -> f ( " app_name " );
2000-12-26 06:30:40 +01:00
$app_order = $phpgw -> db -> f ( " app_order " );
2001-01-22 00:18:05 +01:00
$n_app_anonymous = $phpgw -> acl -> check ( '' , PHPGW_ACL_READ , $n_app_name );
2000-08-19 16:51:27 +02:00
}
2000-10-28 21:24:51 +02:00
2001-02-09 06:04:21 +01:00
$p -> set_var ( " lang_header " , lang ( " Edit application " ));
$p -> set_var ( " hidden_vars " , '<input type="hidden" name="old_app_name" value="' . $old_app_name . '">' );
$p -> set_var ( " th_bg " , $phpgw_info [ " theme " ][ " th_bg " ]);
2001-03-09 00:32:22 +01:00
$p -> set_var ( " form_action " , $phpgw -> link ( " /admin/editapplication.php " ));
2000-12-26 06:30:40 +01:00
display_row ( lang ( " application name " ), '<input name="n_app_name" value="' . $n_app_name . '">' );
display_row ( lang ( " application title " ), '<input name="n_app_title" value="' . $n_app_title . '">' );
2001-02-09 06:04:21 +01:00
$p -> set_var ( " lang_status " , lang ( " Status " ));
$p -> set_var ( " lang_submit_button " , lang ( " edit " ));
2000-08-19 16:51:27 +02:00
2000-11-13 13:00:47 +01:00
$selected [ $n_app_status ] = " selected " ;
$status_html = '<option value="0"' . $selected [ 0 ] . '>' . lang ( " Disabled " ) . '</option>'
2000-11-22 05:18:29 +01:00
. '<option value="1"' . $selected [ 1 ] . '>' . lang ( " Enabled " ) . '</option>'
2000-11-13 13:00:47 +01:00
. '<option value="2"' . $selected [ 2 ] . '>' . lang ( " Enabled - Hidden from navbar " ) . '</option>' ;
2000-12-26 06:30:40 +01:00
display_row ( lang ( " Status " ), '<select name="n_app_status">' . $status_html . '</select>' );
display_row ( lang ( " Select which location this app should appear on the navbar, lowest (left) to highest (right) " ), '<input name="app_order" value="' . $app_order . '">' );
2001-01-22 00:18:05 +01:00
$str = '<input type="checkbox" name="n_app_anonymous" value="True"' ;
if ( $n_app_anonymous ) {
$str .= " checked " ;
}
$str .= " > " ;
display_row ( lang ( " Allow Anonymous access to this app " ), $str );
2001-02-09 06:04:21 +01:00
$p -> set_var ( " select_status " , $status_html );
2000-08-19 16:51:27 +02:00
2001-02-09 06:04:21 +01:00
$p -> pparse ( " out " , " form " );
2000-08-19 16:51:27 +02:00
2000-09-29 07:24:18 +02:00
$phpgw -> common -> phpgw_footer ();
2000-09-25 23:13:52 +02:00
?>