2000-08-19 16:22:09 +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-12-20 11:09:33 +01:00
$phpgw_info [ " flags " ] = array ( " currentapp " => " admin " , " noheader " => True , " nonavbar " => True ,
" enable_nextmatchs_class " => True );
2000-08-19 16:22:09 +02:00
include ( " ../header.inc.php " );
2000-08-20 04:08:01 +02:00
2000-12-20 11:09:33 +01:00
$phpgw -> template -> set_file ( array ( " form " => " application_form.tpl " ,
" row " => " application_form_row.tpl "
));
function display_row ( $label , $value )
{
global $phpgw ;
$phpgw -> template -> set_var ( " tr_color " , $phpgw -> nextmatchs -> alternate_row_color ());
$phpgw -> template -> set_var ( " label " , $label );
$phpgw -> template -> set_var ( " value " , $value );
$phpgw -> template -> parse ( " rows " , " row " , True );
}
2000-08-20 04:08:01 +02:00
2000-08-19 16:49:32 +02:00
if ( $submit ) {
2000-11-22 07:26:44 +01:00
$totalerrors = 0 ;
2000-12-26 06:15:20 +01:00
if ( ! $app_order ) {
$app_order = 0 ;
}
2000-10-28 21:24:51 +02:00
2001-02-08 21:11:13 +01:00
$phpgw -> db -> query ( " select count(*) from phpgw_applications where app_name=' "
2000-12-26 06:30:40 +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 ) {
2000-11-22 07:26:44 +01:00
$error [ $totalerrors ++ ] = lang ( " That application name already exsists. " );
2000-10-28 21:24:51 +02:00
}
2000-12-20 11:09:33 +01:00
if ( preg_match ( " / \ D/ " , $app_order )) {
$error [ $totalerrors ++ ] = lang ( " That application order must be a number. " );
}
2000-10-28 21:24:51 +02:00
if ( ! $n_app_name )
2000-11-22 07:26:44 +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:26:44 +01:00
$error [ $totalerrors ++ ] = lang ( " You must enter an application title. " );
2000-10-28 21:24:51 +02:00
2000-11-22 07:26:44 +01:00
if ( ! $totalerrors ) {
2001-02-08 21:11:13 +01:00
$phpgw -> db -> query ( " insert into phpgw_applications (app_name,app_title,app_enabled,app_order) values(' "
2000-12-26 06:30:40 +01:00
. addslashes ( $n_app_name ) . " ',' " . addslashes ( $n_app_title ) . " ',' "
. " $n_app_status ',' $app_order ') " , __LINE__ , __FILE__ );
2000-08-19 16:49:32 +02:00
2001-01-22 00:18:05 +01:00
if ( $n_app_anonymous ) {
2001-05-08 23:05:56 +02:00
$phpgw -> acl -> add_repository ( $n_app_name , 'everywhere' , 0 , PHPGW_ACL_READ );
2001-01-22 00:18:05 +01:00
}
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-10-28 21:24:51 +02:00
} else {
2000-11-07 21:37:02 +01:00
$phpgw -> template -> set_var ( " error " , " <p><center> " . $phpgw -> common -> error_list ( $error ) . " </center><br> " );
2000-08-19 16:49:32 +02:00
}
2000-12-26 06:30:40 +01:00
} else { // else submit
2000-11-07 21:37:02 +01:00
$phpgw -> template -> set_var ( " error " , " " );
2000-08-19 16:49:32 +02:00
}
2000-10-28 21:24:51 +02:00
$phpgw -> common -> phpgw_header ();
2001-01-06 05:11:13 +01:00
echo parse_navbar ();
2000-08-19 16:49:32 +02:00
2000-11-07 21:37:02 +01:00
$phpgw -> template -> set_var ( " lang_header " , lang ( " Add new application " ));
2000-12-20 11:09:33 +01:00
$phpgw -> template -> set_var ( " th_bg " , $phpgw_info [ " theme " ][ " th_bg " ]);
2000-08-20 04:08:01 +02:00
2000-11-07 21:37:02 +01:00
$phpgw -> template -> set_var ( " hidden_vars " , " " );
2001-03-09 00:32:22 +01:00
$phpgw -> template -> set_var ( " form_action " , $phpgw -> link ( " /admin/newapplication.php " ));
2000-08-19 16:22:09 +02:00
2000-12-20 11:09:33 +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 . '">' );
2000-11-13 13:00:47 +01:00
2000-12-25 02:12:12 +01:00
if ( ! isset ( $n_app_status )) $n_app_status = 1 ;
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-20 11:09:33 +01:00
display_row ( lang ( " Status " ), '<select name="n_app_status">' . $status_html . '</select>' );
2000-12-26 06:30:40 +01:00
if ( ! $app_order ) {
2001-02-08 21:11:13 +01:00
$phpgw -> db -> query ( " select (max(app_order)+1) as max from phpgw_applications " );
2000-12-26 06:30:40 +01:00
$phpgw -> db -> next_record ();
$app_order = $phpgw -> db -> f ( " max " );
}
2000-12-20 11:09:33 +01:00
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 . '">' );
2000-08-20 04:56:02 +02:00
2001-01-22 00:18:05 +01:00
display_row ( lang ( " Allow Anonymous access to this app " ), '<input type="checkbox" name="n_app_anonymous" value="True">' );
2000-12-20 11:09:33 +01:00
$phpgw -> template -> set_var ( " lang_submit_button " , lang ( " add " ));
2000-08-19 16:22:09 +02:00
2000-12-20 11:09:33 +01:00
$phpgw -> template -> pparse ( " out " , " form " );
2000-09-29 07:24:18 +02:00
$phpgw -> common -> phpgw_footer ();
2000-09-25 23:13:52 +02:00
?>