phpldapadmin/creation_template.php

69 lines
2.0 KiB
PHP
Raw Normal View History

2009-06-30 08:05:37 +00:00
<?php
2009-06-30 09:24:29 +00:00
// $Header: /cvsroot/phpldapadmin/phpldapadmin/creation_template.php,v 1.22 2005/03/12 00:57:17 wurley Exp $
2009-06-30 08:05:37 +00:00
2009-06-30 09:24:29 +00:00
/**
2009-06-30 08:05:37 +00:00
* This file simply acts as a plugin grabber for the creator templates in
* the directory templates/creation/
*
* Expected POST vars:
* server_id
* template
2009-06-30 09:24:29 +00:00
*
* @package phpLDAPadmin
*/
/**
2009-06-30 08:05:37 +00:00
*/
2009-06-30 09:22:30 +00:00
require_once 'common.php';
2009-06-30 08:10:17 +00:00
require 'templates/template_config.php';
2009-06-30 08:05:37 +00:00
2009-06-30 09:24:29 +00:00
$server_id = (isset($_REQUEST['server_id']) ? $_REQUEST['server_id'] : '');
$ldapserver = new LDAPServer($server_id);
if( $ldapserver->isReadOnly() )
pla_error( $lang['no_updates_in_read_only_mode'] );
if( ! $ldapserver->haveAuthInfo())
pla_error( $lang['not_enough_login_info'] );
$template = (isset($_REQUEST['template']) ? $_REQUEST['template'] : null);
! is_null($template) or pla_error( $lang['ctemplate_no_template'] );
2009-06-30 09:22:30 +00:00
if( $template == 'custom' ) {
foreach( $templates as $id => $template ) {
if( $template['handler'] == 'custom.php' ) {
$template = $id;
break;
}
}
}
isset( $templates[$template] ) or pla_error( sprintf( $lang['invalid_template'], htmlspecialchars( $template ) ) );
$template_id = $template;
$template = isset( $templates[$template] ) ? $templates[$template_id] : null;
2009-06-30 08:05:37 +00:00
2009-06-30 09:24:29 +00:00
if ( ! array_key_exists('no_header', $template ) ) {
include './header.php';
2009-06-30 08:05:37 +00:00
?>
<body>
2009-06-30 08:09:20 +00:00
<h3 class="title"><?php echo $lang['createf_create_object']?></h3>
2009-06-30 09:24:29 +00:00
<h3 class="subtitle"><?php echo $lang['ctemplate_on_server']?> '<?php echo htmlspecialchars( $ldapserver->name ); ?>', <?php echo $lang['using_template']?> '<?php echo htmlspecialchars( $template['desc'] ); ?>'</h3>
2009-06-30 08:05:37 +00:00
2009-06-30 09:24:29 +00:00
<?php }
2009-06-30 08:05:37 +00:00
$handler = 'templates/creation/' . $template['handler'];
2009-06-30 08:07:14 +00:00
$handler = realpath( $handler );
2009-06-30 09:24:29 +00:00
2009-06-30 09:22:30 +00:00
if( ! file_exists( $handler ) )
pla_error( sprintf( $lang['template_does_not_exist'], htmlspecialchars( $template['handler'] ) ) );
2009-06-30 09:24:29 +00:00
2009-06-30 09:22:30 +00:00
if( ! is_readable( $handler ) )
pla_error( sprintf( $lang['template_not_readable'], htmlspecialchars( $template['handler'] ) ) );
2009-06-30 08:05:37 +00:00
2009-06-30 09:22:30 +00:00
include $handler;
2009-06-30 08:05:37 +00:00
2009-06-30 09:24:29 +00:00
if ( ! array_key_exists('no_header', $template ) ) {
echo "</body>\n</html>";
}
2009-06-30 09:22:30 +00:00
?>