2005-02-27 12:40:06 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								< ? php  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								/*  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								$Id $  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  This  code  is  part  of  LDAP  Account  Manager  ( http :// www . sourceforge . net / projects / lam ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  This  code  is  based  on  phpLDAPadmin . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  Copyright  ( C )  2004   David  Smith  and  phpLDAPadmin  developers 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  The  original  code  was  modified  to  fit  for  LDAP  Account  Manager  by  Roland  Gruber . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  Copyright  ( C )  2005   Roland  Gruber 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  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 . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  This  program  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  General  Public  License  for  more  details . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  You  should  have  received  a  copy  of  the  GNU  General  Public  License 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  along  with  this  program ;  if  not ,  write  to  the  Free  Software 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  Foundation ,  Inc . ,  59  Temple  Place ,  Suite  330 ,  Boston ,  MA   02111 - 1307   USA 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								*/  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								/**  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  Displays  a  last  chance  confirmation  form  to  delete  a  dn . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  Variables  that  come  in  as  GET  vars : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *   -  dn  ( rawurlencoded ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ package  lists 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ subpackage  tree 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ author  David  Smith 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ author  Roland  Gruber 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2006-03-26 17:51:25 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								/** security functions */  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								include_once ( '../../lib/security.inc' );  
						 
					
						
							
								
									
										
										
										
											2005-02-27 12:40:06 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								/** tree functions */  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								include_once ( '../../lib/tree.inc' );  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								/** access to configuration */  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								include_once ( '../../lib/config.inc' );  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								/** LDAP functions */  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								include_once ( '../../lib/ldap.inc' );  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								/** status messages */  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								include_once ( '../../lib/status.inc' );  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								// start session
  
						 
					
						
							
								
									
										
										
										
											2006-03-26 17:51:25 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								startSecureSession ();  
						 
					
						
							
								
									
										
										
										
											2005-02-27 12:40:06 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								setlanguage ();  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								$dn  =  $_GET [ 'dn' ];  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								$encoded_dn  =  rawurlencode (  $dn  );  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								$rdn  =  pla_explode_dn (  $dn  );  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								$rdn  =  $rdn [ 0 ];  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								$children  =  get_container_contents (  $dn , 0 , '(objectClass=*)' , LDAP_DEREF_NEVER  );  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								$has_children  =  count ( $children ) > 0  ?  true  :  false ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								echo  $_SESSION [ 'header' ];  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								echo  " <title>LDAP Account Manager</title> \n " ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								echo  " <link rel= \" stylesheet \"  type= \" text/css \"  href= \" ../../style/layout.css \" > \n " ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								echo  " </head> \n " ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								?> 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								< body >  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								< h3  class = " tree_title " >< ? php  echo  sprintf (  _ ( 'Delete %s' ),  htmlspecialchars (  $rdn  )  );  ?> </b></h3>
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								< h3  class = " tree_subtitle " >< ? php  echo  _ ( 'DN' );  ?> : <b><?php echo htmlspecialchars( ( $dn ) ); ?></b></h3>
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								< ? php   if (  $has_children  )  {  ?> 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								< center >< b >< ? php  echo  _ ( 'Permanently delete all children, too?' );  ?> </b><br /><br />
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								< ? php  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								flush ();  // so the user can get something on their screen while we figure out how many children this object has
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								if (  $has_children  )  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									// get the total number of child objects (whole sub-tree)
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$s  =  pla_ldap_search (  'objectClass=*' ,  $dn ,  array ( 'dn' ),  'sub'  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$sub_tree_count  =  count (  $s  ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								?> 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								< table  class = " tree_delete_confirm " >  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								< td >  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								< p >  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								< ? php  echo  sprintf (  _ ( 'This entry is the root of a sub-tree containing %s entries.' ),  $sub_tree_count  );  ?>  
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								< br  />  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								< br  />  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								< ? php  echo  sprintf (  _ ( 'LAM can recursively delete this entry and all of its children. See below for a list of all the entries that this action will delete. Do you want to do this?' ),  ( $sub_tree_count - 1 )  );  ?> <br />
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								< br  />  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								< br  />  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								< br  />  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								< table  width = " 100% " >  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								< tr >  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									< td > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									< center > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									< form  action = " rdelete.php "  method = " post " > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									< input  type = " hidden "  name = " dn "  value = " <?php echo  $dn ; ?> "  /> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									< input  type = " submit "  value = " <?php echo sprintf( _('Delete all %s objects'),  $sub_tree_count  ); ?> "  /> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									</ form > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									</ td > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									< td > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									< center > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									< form  action = " edit.php "  method = " get " > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									< input  type = " hidden "  name = " dn "  value = " <?php echo htmlspecialchars( $dn ); ?> "  /> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									< input  type = " submit "  name = " submit "  value = " <?php echo _('Cancel'); ?> " /> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									</ form > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									</ center > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									</ td > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								</ tr >  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								</ table >  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								</ td >  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								</ table >  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								< ? php  flush ();  ?> 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								< br  />  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								< br  />  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								< ? php  echo  _ ( 'List of entries to be deleted:' );  ?> <br />
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								< select  size = " <?php echo min( 10,  $sub_tree_count  );?> "  multiple  disabled  style = " background:white; color:black;width:500px "  >  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								< ? php  $i = 0 ;  ?> 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								< ? php  foreach (  $s  as  $dn  =>  $junk  )  {  ?> 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									< ? php  $i ++ ;  ?> 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									< option >< ? php  echo  $i ;  ?> . <?php echo htmlspecialchars( ( $dn ) ); ?></option>
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								< ? php  }  ?> 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								</ select >  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								< br  />  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								< ? php   }  else  {  ?> 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								< center >  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								< table  class = " tree_delete_confirm " >  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								< td >  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								< ? php  echo  _ ( 'Are you sure you want to permanently delete this object?' );  ?> <br />
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								< br  />  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								< nobr >< acronym >< ? php  echo  _ ( 'DN' );  ?> </acronym>:  <b><?php echo pretty_print_dn( $dn ); ?></b><nobr><br />
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								< br  />  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								< table  width = " 100% " >  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								< tr >  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									< td > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									< center > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									< form  action = " delete.php "  method = " post " > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									< input  type = " hidden "  name = " dn "  value = " <?php echo htmlspecialchars( $dn ); ?> "  /> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									< input  type = " submit "  name = " submit "  value = " <?php echo _('Delete'); ?> " /> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									</ center > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									</ form > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									</ td > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									< td > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									< center > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									< form  action = " edit.php "  method = " get " > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									< input  type = " hidden "  name = " dn "  value = " <?php echo  $dn ; ?> "  /> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									< input  type = " submit "  name = " submit "  value = " <?php echo _('Cancel'); ?> " /> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									</ form > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									</ center > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									</ td > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								</ tr >  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								</ table >  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								</ td >  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								</ table >  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								</ center >  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								< ? php   }  ?> 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								</ body >  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								</ html >