2004-05-30 13:43:42 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								< ? php  
						 
					
						
							
								
									
										
										
										
											2016-12-26 09:26:26 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								namespace  LAM\TOOLS\PDF_EDITOR ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								use  \htmlTable ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								use  \htmlTitle ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								use  \htmlStatusMessage ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								use  \LAMCfgMain ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								use  \htmlSubTitle ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								use  \htmlSelect ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								use  \htmlImage ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								use  \htmlSpacer ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								use  \htmlButton ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								use  \htmlLink ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								use  \htmlOutputText ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								use  \htmlInputFileUpload ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								use  \htmlHelpLink ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								use  \htmlInputField ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								use  \htmlHiddenInput ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								use  \htmlDiv ;  
						 
					
						
							
								
									
										
										
										
											2004-05-30 13:43:42 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								/*  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								$Id $  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2009-10-27 18:47:12 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								  This  code  is  part  of  LDAP  Account  Manager  ( http :// www . ldap - account - manager . org / ) 
							 
						 
					
						
							
								
									
										
										
										
											2010-01-01 17:21:46 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								  Copyright  ( C )  2003  -  2006   Michael  Duergner 
							 
						 
					
						
							
								
									
										
										
										
											2016-12-19 20:32:08 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								                2005  -  2016   Roland  Gruber 
							 
						 
					
						
							
								
									
										
										
										
											2004-05-30 13:43:42 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  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 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2005-07-27 17:43:57 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								*/  
						 
					
						
							
								
									
										
										
										
											2004-05-30 13:43:42 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2005-07-27 17:43:57 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								/**  
						 
					
						
							
								
									
										
										
										
											2017-01-06 09:11:47 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								*  This  is  the  main  window  of  the  PDF  structure  editor .  
						 
					
						
							
								
									
										
										
										
											2005-07-27 17:43:57 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								*  
						 
					
						
							
								
									
										
										
										
											2010-01-01 17:21:46 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								*  @ author  Michael  Duergner  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								*  @ author  Roland  Gruber  
						 
					
						
							
								
									
										
										
										
											2005-07-27 17:43:57 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								*  @ package  PDF  
						 
					
						
							
								
									
										
										
										
											2004-05-30 13:43:42 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								*/  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2006-03-26 17:51:25 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								/** security functions */  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								include_once ( " ../../lib/security.inc " );  
						 
					
						
							
								
									
										
										
										
											2005-07-27 17:43:57 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								/** access to PDF configuration files */  
						 
					
						
							
								
									
										
										
										
											2004-05-30 13:43:42 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								include_once ( " ../../lib/pdfstruct.inc " );  
						 
					
						
							
								
									
										
										
										
											2005-07-27 17:43:57 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								/** LDAP object */  
						 
					
						
							
								
									
										
										
										
											2004-05-30 13:43:42 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								include_once ( " ../../lib/ldap.inc " );  
						 
					
						
							
								
									
										
										
										
											2005-07-27 17:43:57 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								/** for language settings */  
						 
					
						
							
								
									
										
										
										
											2004-05-30 13:43:42 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								include_once ( " ../../lib/config.inc " );  
						 
					
						
							
								
									
										
										
										
											2005-07-27 17:43:57 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								/** module functions */  
						 
					
						
							
								
									
										
										
										
											2004-07-16 06:33:37 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								include_once ( " ../../lib/modules.inc " );  
						 
					
						
							
								
									
										
										
										
											2004-05-30 13:43:42 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								// start session
  
						 
					
						
							
								
									
										
										
										
											2006-03-26 17:51:25 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								startSecureSession ();  
						 
					
						
							
								
									
										
										
										
											2004-05-30 13:43:42 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2007-12-30 13:15:39 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								// die if no write access
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								if  ( ! checkIfWriteAccessIsAllowed ())  die ();  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2012-07-22 10:37:01 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								checkIfToolIsActive ( 'toolPDFEditor' );  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2015-05-15 19:16:46 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								if  ( ! empty ( $_POST ))  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									validateSecurityToken (); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2004-05-30 13:43:42 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								setlanguage ();  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2017-01-06 09:11:47 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								// Unset PDF structure definitions in session if set
  
						 
					
						
							
								
									
										
										
										
											2004-06-03 14:26:48 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								if ( isset ( $_SESSION [ 'currentPDFStructure' ]))  {  
						 
					
						
							
								
									
										
										
										
											2004-09-08 14:40:25 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									unset ( $_SESSION [ 'currentPDFStructure' ]); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									unset ( $_SESSION [ 'currentPageDefinitions' ]); 
							 
						 
					
						
							
								
									
										
										
										
											2004-06-03 14:26:48 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								}  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2004-05-30 13:43:42 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								// check if user is logged in, if not go to login
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								if  ( ! $_SESSION [ 'ldap' ]  ||  ! $_SESSION [ 'ldap' ] -> server ())  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									metaRefresh ( " ../login.php " ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									exit ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2008-12-28 19:08:57 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								// check if new template should be created
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								if ( isset ( $_POST [ 'createNewTemplate' ]))  {  
						 
					
						
							
								
									
										
										
										
											2016-12-26 09:26:26 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									metaRefresh ( 'pdfpage.php?type='  .  htmlspecialchars ( $_POST [ 'typeId' ])); 
							 
						 
					
						
							
								
									
										
										
										
											2008-12-28 19:08:57 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									exit (); 
							 
						 
					
						
							
								
									
										
										
										
											2004-05-30 13:43:42 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								}  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2016-12-26 09:26:26 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								$typeManager  =  new  \LAM\TYPES\TypeManager ();  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								$types  =  $typeManager -> getConfiguredTypes ();  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								$sortedTypes  =  array ();  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								foreach  ( $types  as  $type )  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									if  ( $type -> isHidden ()  ||  ! checkIfWriteAccessIsAllowed ( $type -> getId ()))  { 
							 
						 
					
						
							
								
									
										
										
										
											2013-01-01 20:46:28 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										continue ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
									
										
										
										
											2016-12-26 09:26:26 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									$sortedTypes [ $type -> getId ()]  =  $type -> getAlias (); 
							 
						 
					
						
							
								
									
										
										
										
											2010-04-04 15:00:06 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								}  
						 
					
						
							
								
									
										
										
										
											2016-12-26 09:26:26 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								natcasesort ( $sortedTypes );  
						 
					
						
							
								
									
										
										
										
											2004-05-30 13:43:42 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-04-25 18:00:47 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								$container  =  new  htmlTable ();  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								$container -> addElement ( new  htmlTitle ( _ ( 'PDF editor' )),  true );  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								if  ( isset ( $_POST [ 'deleteProfile' ])  &&  ( $_POST [ 'deleteProfile' ]  ==  'true' ))  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									// delete structure
 
							 
						 
					
						
							
								
									
										
										
										
											2017-01-05 20:05:17 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									if  ( \LAM\PDF\deletePDFStructure ( $_POST [ 'profileDeleteType' ],  $_POST [ 'profileDeleteName' ]))  { 
							 
						 
					
						
							
								
									
										
										
										
											2016-12-26 09:26:26 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										$message  =  new  htmlStatusMessage ( 'INFO' ,  _ ( 'Deleted PDF structure.' ),  \LAM\TYPES\getTypeAlias ( $_POST [ 'profileDeleteType' ])  .  ': '  .  htmlspecialchars ( $_POST [ 'profileDeleteName' ])); 
							 
						 
					
						
							
								
									
										
										
										
											2011-04-25 18:00:47 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										$message -> colspan  =  10 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$container -> addElement ( $message ,  true ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									else  { 
							 
						 
					
						
							
								
									
										
										
										
											2016-12-26 09:26:26 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										$message  =  new  htmlStatusMessage ( 'ERROR' ,  _ ( 'Unable to delete PDF structure!' ),  \LAM\TYPES\getTypeAlias ( $_POST [ 'profileDeleteType' ])  .  ': '  .  htmlspecialchars ( $_POST [ 'profileDeleteName' ])); 
							 
						 
					
						
							
								
									
										
										
										
											2011-04-25 18:00:47 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										$message -> colspan  =  10 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$container -> addElement ( $message ,  true ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2017-01-05 20:40:48 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								$configProfiles  =  getConfigProfiles ();  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								$serverProfiles  =  array ();  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								foreach  ( $configProfiles  as  $profileName )  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$serverProfiles [ $profileName ]  =  new  \LAMConfig ( $profileName ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2017-01-06 09:11:47 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								// import structures
  
						 
					
						
							
								
									
										
										
										
											2017-01-05 20:40:48 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								if  ( ! empty ( $_POST [ 'import' ]))  {  
						 
					
						
							
								
									
										
										
										
											2012-10-28 14:37:54 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									$cfg  =  new  LAMCfgMain (); 
							 
						 
					
						
							
								
									
										
										
										
											2017-01-05 20:40:48 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									$typeId  =  $_POST [ 'typeId' ]; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									// check master password
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$errMessage  =  null ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									if  ( ! $cfg -> checkPassword ( $_POST [ 'passwd_i_'  .  $_POST [ 'typeId' ]]))  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$errMessage  =  new  htmlStatusMessage ( 'ERROR' ,  _ ( 'Master password is wrong!' )); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									elseif  ( ! empty ( $_POST [ 'importProfiles_'  .  $typeId ]))  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$options  =  array (); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										foreach  ( $_POST [ 'importProfiles_'  .  $typeId ]  as  $importProfiles )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											$parts  =  explode ( '##' ,  $importProfiles ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											$options []  =  array ( 'conf'  =>  $parts [ 0 ],  'typeId'  =>  $parts [ 1 ],  'name'  =>  $parts [ 2 ]); 
							 
						 
					
						
							
								
									
										
										
										
											2012-10-28 14:37:54 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										} 
							 
						 
					
						
							
								
									
										
										
										
											2017-01-05 20:40:48 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										$errMessage  =  importStructures ( $_POST [ 'typeId' ],  $options ,  $serverProfiles ,  $typeManager ); 
							 
						 
					
						
							
								
									
										
										
										
											2012-10-28 14:37:54 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
									
										
										
										
											2017-01-05 20:40:48 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									if  ( $errMessage  !=  null )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$errMessage -> colspan  =  10 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$container -> addElement ( $errMessage ,  true ); 
							 
						 
					
						
							
								
									
										
										
										
											2012-10-28 14:37:54 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2017-01-06 09:11:47 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								// export structures
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								if  ( ! empty ( $_POST [ 'export' ]))  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$cfg  =  new  LAMCfgMain (); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$typeId  =  $_POST [ 'typeId' ]; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									// check master password
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$errMessage  =  null ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									if  ( ! $cfg -> checkPassword ( $_POST [ 'passwd_e_'  .  $_POST [ 'typeId' ]]))  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$errMessage  =  new  htmlStatusMessage ( 'ERROR' ,  _ ( 'Master password is wrong!' )); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									elseif  ( ! empty ( $_POST [ 'exportProfiles_'  .  $typeId ]))  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$options  =  array (); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										foreach  ( $_POST [ 'exportProfiles_'  .  $typeId ]  as  $importProfiles )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											$parts  =  explode ( '##' ,  $importProfiles ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											$options []  =  array ( 'conf'  =>  $parts [ 0 ],  'typeId'  =>  $parts [ 1 ]); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$typeId  =  $_POST [ 'typeId' ]; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$name  =  $_POST [ 'name_'  .  $typeId ]; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$errMessage  =  exportStructures ( $typeId ,  $name ,  $options ,  $serverProfiles ,  $typeManager ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									if  ( $errMessage  !=  null )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$errMessage -> colspan  =  10 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$container -> addElement ( $errMessage ,  true ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  
						 
					
						
							
								
									
										
										
										
											2017-01-05 20:40:48 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2013-10-08 19:11:01 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								// upload logo file
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								if  ( isset ( $_POST [ 'uploadLogo' ])  &&  ! empty ( $_FILES [ 'logoUpload' ])  &&  ! empty ( $_FILES [ 'logoUpload' ][ 'size' ]))  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$file  =  $_FILES [ 'logoUpload' ][ 'tmp_name' ]; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$filename  =  $_FILES [ 'logoUpload' ][ 'name' ]; 
							 
						 
					
						
							
								
									
										
										
										
											2017-01-04 19:52:51 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									$container -> addElement ( \LAM\PDF\uploadPDFLogo ( $file ,  $filename ),  true ); 
							 
						 
					
						
							
								
									
										
										
										
											2013-10-08 19:11:01 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								}  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								// delete logo file
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								if  ( isset ( $_POST [ 'delLogo' ]))  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$toDel  =  $_POST [ 'logo' ]; 
							 
						 
					
						
							
								
									
										
										
										
											2017-01-04 19:52:51 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									$container -> addElement ( \LAM\PDF\deletePDFLogo ( $toDel ),  true ); 
							 
						 
					
						
							
								
									
										
										
										
											2013-10-08 19:11:01 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								}  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2008-12-28 19:08:57 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								// get list of account types
  
						 
					
						
							
								
									
										
										
										
											2016-12-26 09:26:26 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								$availableTypes  =  array ();  
						 
					
						
							
								
									
										
										
										
											2008-12-28 19:08:57 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								$templateClasses  =  array ();  
						 
					
						
							
								
									
										
										
										
											2016-12-26 09:26:26 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								foreach  ( $sortedTypes  as  $typeId  =>  $title )  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$type  =  $typeManager -> getConfiguredType ( $typeId ); 
							 
						 
					
						
							
								
									
										
										
										
											2008-12-28 19:08:57 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									$templateClasses []  =  array ( 
							 
						 
					
						
							
								
									
										
										
										
											2016-12-26 09:26:26 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										'typeId'  =>  $type -> getId (), 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										'scope'  =>  $type -> getScope (), 
							 
						 
					
						
							
								
									
										
										
										
											2010-04-04 15:00:06 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										'title'  =>  $title , 
							 
						 
					
						
							
								
									
										
										
										
											2008-12-28 19:08:57 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										'templates'  =>  " " ); 
							 
						 
					
						
							
								
									
										
										
										
											2016-12-26 09:26:26 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									$availableTypes [ $title ]  =  $type -> getId (); 
							 
						 
					
						
							
								
									
										
										
										
											2008-12-28 19:08:57 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								}  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								// get list of templates for each account type
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								for  ( $i  =  0 ;  $i  <  sizeof ( $templateClasses );  $i ++ )  {  
						 
					
						
							
								
									
										
										
										
											2017-01-05 20:05:17 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									$templateClasses [ $i ][ 'templates' ]  =  \LAM\PDF\getPDFStructures ( $templateClasses [ $i ][ 'typeId' ]); 
							 
						 
					
						
							
								
									
										
										
										
											2008-12-28 19:08:57 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								}  
						 
					
						
							
								
									
										
										
										
											2004-05-30 13:43:42 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2008-12-28 19:08:57 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								// check if a template should be edited
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								for  ( $i  =  0 ;  $i  <  sizeof ( $templateClasses );  $i ++ )  {  
						 
					
						
							
								
									
										
										
										
											2016-12-26 09:26:26 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									if  ( isset ( $_POST [ 'editTemplate_'  .  $templateClasses [ $i ][ 'typeId' ]])  ||  isset ( $_POST [ 'editTemplate_'  .  $templateClasses [ $i ][ 'typeId' ]  .  '_x' ]))  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										metaRefresh ( 'pdfpage.php?type='  .  htmlspecialchars ( $templateClasses [ $i ][ 'typeId' ])  .  '&edit='  .  htmlspecialchars ( $_POST [ 'template_'  .  $templateClasses [ $i ][ 'typeId' ]])); 
							 
						 
					
						
							
								
									
										
										
										
											2008-12-28 19:08:57 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										exit ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  
						 
					
						
							
								
									
										
										
										
											2010-10-18 19:47:07 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2010-01-01 17:21:46 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								include  '../main_header.php' ;  
						 
					
						
							
								
									
										
										
										
											2004-05-30 13:43:42 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								?> 
  
						 
					
						
							
								
									
										
										
										
											2013-01-19 13:18:52 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								< div  class = " user-bright smallPaddingContent " >  
						 
					
						
							
								
									
										
										
										
											2013-10-08 19:11:01 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								< form  enctype = " multipart/form-data "  action = " pdfmain.php "  method = " post "  name = " pdfmainForm "  >  
						 
					
						
							
								
									
										
										
										
											2015-05-15 19:16:46 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								< input  type = " hidden "  name = " <?php echo getSecurityTokenName(); ?> "  value = " <?php echo getSecurityTokenValue(); ?> " >  
						 
					
						
							
								
									
										
										
										
											2010-05-26 17:54:00 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									< ? php 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										if  ( isset ( $_GET [ 'savedSuccessfully' ]))  { 
							 
						 
					
						
							
								
									
										
										
										
											2010-10-18 19:47:07 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											$message  =  new  htmlStatusMessage ( " INFO " ,  _ ( " PDF structure was successfully saved. " ),  htmlspecialchars ( $_GET [ 'savedSuccessfully' ])); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											$message -> colspan  =  10 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											$container -> addElement ( $message ,  true ); 
							 
						 
					
						
							
								
									
										
										
										
											2010-05-26 17:54:00 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										} 
							 
						 
					
						
							
								
									
										
										
										
											2012-10-28 14:37:54 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2010-10-18 19:47:07 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										// new template
 
							 
						 
					
						
							
								
									
										
										
										
											2016-12-26 09:26:26 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										if  ( ! empty ( $availableTypes ))  { 
							 
						 
					
						
							
								
									
										
										
										
											2014-01-15 20:48:52 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											$container -> addElement ( new  htmlSubTitle ( _ ( 'Create a new PDF structure' )),  true ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											$newPDFContainer  =  new  htmlTable (); 
							 
						 
					
						
							
								
									
										
										
										
											2016-12-26 09:26:26 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											$newProfileSelect  =  new  htmlSelect ( 'typeId' ,  $availableTypes ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											$newProfileSelect -> setHasDescriptiveElements ( true ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											$newProfileSelect -> setWidth ( '15em' ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											$newPDFContainer -> addElement ( $newProfileSelect ); 
							 
						 
					
						
							
								
									
										
										
										
											2014-01-15 20:48:52 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											$newPDFContainer -> addElement ( new  htmlSpacer ( '10px' ,  null )); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											$newPDFContainer -> addElement ( new  htmlButton ( 'createNewTemplate' ,  _ ( 'Create' ))); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											$container -> addElement ( $newPDFContainer ,  true ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											$container -> addElement ( new  htmlSpacer ( null ,  '10px' ),  true ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										} 
							 
						 
					
						
							
								
									
										
										
										
											2012-10-28 14:37:54 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2010-10-18 19:47:07 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										// existing templates
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$container -> addElement ( new  htmlSubTitle ( _ ( " Manage existing PDF structures " )),  true ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$existingContainer  =  new  htmlTable (); 
							 
						 
					
						
							
								
									
										
										
										
											2008-12-28 19:08:57 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										for  ( $i  =  0 ;  $i  <  sizeof ( $templateClasses );  $i ++ )  { 
							 
						 
					
						
							
								
									
										
										
										
											2012-10-28 14:37:54 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											if  ( $i  >  0 )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												$existingContainer -> addElement ( new  htmlSpacer ( null ,  '10px' ),  true ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2010-10-18 19:47:07 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											$existingContainer -> addElement ( new  htmlImage ( '../../graphics/'  .  $templateClasses [ $i ][ 'scope' ]  .  '.png' )); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											$existingContainer -> addElement ( new  htmlSpacer ( '3px' ,  null )); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											$existingContainer -> addElement ( new  htmlOutputText ( $templateClasses [ $i ][ 'title' ])); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											$existingContainer -> addElement ( new  htmlSpacer ( '3px' ,  null )); 
							 
						 
					
						
							
								
									
										
										
										
											2016-12-26 09:26:26 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											$select  =  new  htmlSelect ( 'template_'  .  $templateClasses [ $i ][ 'typeId' ],  $templateClasses [ $i ][ 'templates' ]); 
							 
						 
					
						
							
								
									
										
										
										
											2010-10-18 19:47:07 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											$select -> setWidth ( '15em' ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											$existingContainer -> addElement ( $select ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											$existingContainer -> addElement ( new  htmlSpacer ( '3px' ,  null )); 
							 
						 
					
						
							
								
									
										
										
										
											2016-12-26 09:26:26 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											$exEditButton  =  new  htmlButton ( 'editTemplate_'  .  $templateClasses [ $i ][ 'typeId' ],  'edit.png' ,  true ); 
							 
						 
					
						
							
								
									
										
										
										
											2010-10-18 19:47:07 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											$exEditButton -> setTitle ( _ ( 'Edit' )); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											$existingContainer -> addElement ( $exEditButton ); 
							 
						 
					
						
							
								
									
										
										
										
											2011-04-25 18:00:47 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											$deleteLink  =  new  htmlLink ( null ,  '#' ,  '../../graphics/delete.png' ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											$deleteLink -> setTitle ( _ ( 'Delete' )); 
							 
						 
					
						
							
								
									
										
										
										
											2016-12-26 09:26:26 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											$deleteLink -> setOnClick ( " profileShowDeleteDialog(' "  .  _ ( 'Delete' )  .  " ', ' "  .  _ ( 'Ok' )  .  " ', ' "  .  _ ( 'Cancel' )  .  " ', ' "  .  $templateClasses [ $i ][ 'typeId' ]  .  " ', ' "  .  'template_'  .  $templateClasses [ $i ][ 'typeId' ]  .  " '); " ); 
							 
						 
					
						
							
								
									
										
										
										
											2012-10-28 14:37:54 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											$existingContainer -> addElement ( $deleteLink ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2012-10-28 15:06:33 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											if  ( count ( $configProfiles )  >  1 )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												$importLink  =  new  htmlLink ( null ,  '#' ,  '../../graphics/import.png' ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												$importLink -> setTitle ( _ ( 'Import PDF structures' )); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												$importLink -> setOnClick ( " showDistributionDialog(' "  .  _ ( " Import PDF structures " )  .  " ', ' "  . 
							 
						 
					
						
							
								
									
										
										
										
											2016-12-26 09:26:26 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
																		_ ( 'Ok' )  .  " ', ' "  .  _ ( 'Cancel' )  .  " ', ' "  .  $templateClasses [ $i ][ 'typeId' ]  .  " ', 'import'); " ); 
							 
						 
					
						
							
								
									
										
										
										
											2012-10-28 15:06:33 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
												$existingContainer -> addElement ( $importLink ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											} 
							 
						 
					
						
							
								
									
										
										
										
											2012-10-28 15:03:36 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											$exportLink  =  new  htmlLink ( null ,  '#' ,  '../../graphics/export.png' ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											$exportLink -> setTitle ( _ ( 'Export PDF structure' )); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											$exportLink -> setOnClick ( " showDistributionDialog(' "  .  _ ( " Export PDF structure " )  .  " ', ' "  . 
							 
						 
					
						
							
								
									
										
										
										
											2016-12-26 09:26:26 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
																	_ ( 'Ok' )  .  " ', ' "  .  _ ( 'Cancel' )  .  " ', ' "  .  $templateClasses [ $i ][ 'typeId' ]  .  " ', 'export', ' "  .  'template_'  .  $templateClasses [ $i ][ 'typeId' ]  .  " ', ' "  .  $_SESSION [ 'config' ] -> getName ()  .  " '); " ); 
							 
						 
					
						
							
								
									
										
										
										
											2012-10-28 15:03:36 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											$existingContainer -> addElement ( $exportLink ); 
							 
						 
					
						
							
								
									
										
										
										
											2012-10-28 14:37:54 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											$existingContainer -> addNewLine (); 
							 
						 
					
						
							
								
									
										
										
										
											2008-12-28 19:08:57 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										} 
							 
						 
					
						
							
								
									
										
										
										
											2010-10-18 19:47:07 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										$container -> addElement ( $existingContainer ,  true ); 
							 
						 
					
						
							
								
									
										
										
										
											2012-10-28 14:37:54 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2013-10-08 19:11:01 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										// manage logos
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$logoContainer  =  new  htmlTable (); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$logoContainer -> addElement ( new  htmlSpacer ( null ,  '30px' ),  true ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$logoContainer -> addElement ( new  htmlSubTitle ( _ ( 'Manage logos' )),  true ); 
							 
						 
					
						
							
								
									
										
										
										
											2017-01-04 19:52:51 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										$logos  =  \LAM\PDF\getAvailableLogos (); 
							 
						 
					
						
							
								
									
										
										
										
											2013-10-08 19:11:01 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										$logoOptions  =  array (); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										foreach  ( $logos  as  $logo )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											$file  =  $logo [ 'filename' ]; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											$label  =  $file  .  ' ('  .  $logo [ 'infos' ][ 0 ]  .  ' x '  .  $logo [ 'infos' ][ 1 ]  .  " ) " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											$logoOptions [ $label ]  =  $file ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$logoSelect  =  new  htmlSelect ( 'logo' ,  $logoOptions ,  null ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$logoSelect -> setHasDescriptiveElements ( true ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$logoContainer -> addElement ( $logoSelect ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$delLogo  =  new  htmlButton ( 'delLogo' ,  _ ( 'Delete' )); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$delLogo -> setIconClass ( 'deleteButton' ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$logoContainer -> addElement ( $delLogo ,  true ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$logoContainer -> addElement ( new  htmlInputFileUpload ( 'logoUpload' )); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$logoUpload  =  new  htmlButton ( 'uploadLogo' ,  _ ( 'Upload' )); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$logoUpload -> setIconClass ( 'upButton' ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$logoContainer -> addElement ( $logoUpload ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$container -> addElement ( $logoContainer ,  true ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$container -> addElement ( new  htmlSpacer ( null ,  '10px' ),  true ); 
							 
						 
					
						
							
								
									
										
										
										
											2012-10-28 14:37:54 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										// generate content
 
							 
						 
					
						
							
								
									
										
										
										
											2010-10-18 19:47:07 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										$tabindex  =  1 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										parseHtml ( null ,  $container ,  array (),  false ,  $tabindex ,  'user' ); 
							 
						 
					
						
							
								
									
										
										
										
											2012-10-28 14:37:54 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										echo  " </form> \n " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										echo  " </div> \n " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										for  ( $i  =  0 ;  $i  <  sizeof ( $templateClasses );  $i ++ )  { 
							 
						 
					
						
							
								
									
										
										
										
											2016-12-26 09:26:26 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											$typeId  =  $templateClasses [ $i ][ 'typeId' ]; 
							 
						 
					
						
							
								
									
										
										
										
											2017-01-05 20:40:48 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											$scope  =  $templateClasses [ $i ][ 'scope' ]; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											$importOptions  =  array (); 
							 
						 
					
						
							
								
									
										
										
										
											2012-10-28 14:37:54 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											foreach  ( $configProfiles  as  $profile )  { 
							 
						 
					
						
							
								
									
										
										
										
											2017-01-05 20:40:48 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
												$typeManagerImport  =  new  \LAM\TYPES\TypeManager ( $serverProfiles [ $profile ]); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												$typesImport  =  $typeManagerImport -> getConfiguredTypesForScope ( $scope ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												foreach  ( $typesImport  as  $typeImport )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
													if  (( $profile  !=  $_SESSION [ 'config' ] -> getName ())  ||  ( $typeImport -> getId ()  !=  $typeId ))  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
														$accountProfiles  =  \LAM\PDF\getPDFStructures ( $typeImport -> getId (),  $profile ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
														if  ( ! empty ( $accountProfiles ))  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
															foreach  ( $accountProfiles  as  $accountProfile )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
																$importOptions [ $profile ][ $typeImport -> getAlias ()  .  ': '  .  $accountProfile ]  =  $profile  .  '##'  .  $typeImport -> getId ()  .  '##'  .  $accountProfile ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
															} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
														} 
							 
						 
					
						
							
								
									
										
										
										
											2012-10-28 14:37:54 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
													} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											//import dialog
 
							 
						 
					
						
							
								
									
										
										
										
											2016-12-26 09:26:26 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											echo  " <div id= \" importDialog_ $typeId\ "  class = \ " hidden \" > \n " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											echo  " <form id= \" importDialogForm_ $typeId\ "  method = \ " post \"  action= \" pdfmain.php \" > \n " ; 
							 
						 
					
						
							
								
									
										
										
										
											2012-10-28 14:37:54 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											$container  =  new  htmlTable (); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											$container -> addElement ( new  htmlOutputText ( _ ( 'PDF structures' )),  true ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2017-01-05 20:40:48 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											$select  =  new  htmlSelect ( 'importProfiles_'  .  $typeId ,  $importOptions ,  array (),  count ( $importOptions ,  1 )  <  15  ?  count ( $importOptions ,  1 )  :  15 ); 
							 
						 
					
						
							
								
									
										
										
										
											2012-10-28 14:37:54 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											$select -> setMultiSelect ( true ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											$select -> setHasDescriptiveElements ( true ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											$select -> setContainsOptgroups ( true ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											$select -> setWidth ( '290px' ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											$container -> addElement ( $select ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											$container -> addElement ( new  htmlHelpLink ( '408' ),  true ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											$container -> addElement ( new  htmlSpacer ( null ,  '10px' ),  true ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											$container -> addElement ( new  htmlOutputText ( _ ( " Master password " )),  true ); 
							 
						 
					
						
							
								
									
										
										
										
											2017-01-05 20:40:48 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											$exportPasswd  =  new  htmlInputField ( 'passwd_i_'  .  $typeId ); 
							 
						 
					
						
							
								
									
										
										
										
											2012-10-28 14:37:54 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											$exportPasswd -> setIsPassword ( true ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											$container -> addElement ( $exportPasswd ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											$container -> addElement ( new  htmlHelpLink ( '236' )); 
							 
						 
					
						
							
								
									
										
										
										
											2017-01-05 20:40:48 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											$container -> addElement ( new  htmlHiddenInput ( 'import' ,  '1' )); 
							 
						 
					
						
							
								
									
										
										
										
											2016-12-26 09:26:26 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											$container -> addElement ( new  htmlHiddenInput ( 'typeId' ,  $typeId ),  true ); 
							 
						 
					
						
							
								
									
										
										
										
											2015-05-15 19:16:46 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											addSecurityTokenToMetaHTML ( $container ); 
							 
						 
					
						
							
								
									
										
										
										
											2016-12-19 20:32:08 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2012-10-28 14:37:54 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											parseHtml ( null ,  $container ,  array (),  false ,  $tabindex ,  'user' ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											echo  '</form>' ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											echo  " </div> \n " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2017-01-06 09:11:47 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											//export dialog
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											echo  " <div id= \" exportDialog_ $typeId\ "  class = \ " hidden \" > \n " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											echo  " <form id= \" exportDialogForm_ $typeId\ "  method = \ " post \"  action= \" pdfmain.php \" > \n " ; 
							 
						 
					
						
							
								
									
										
										
										
											2012-10-28 14:37:54 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2017-01-06 09:11:47 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											$container  =  new  htmlTable (); 
							 
						 
					
						
							
								
									
										
										
										
											2016-12-19 20:32:08 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2017-01-06 09:11:47 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											$container -> addElement ( new  htmlOutputText ( _ ( " Target server profile " )),  true ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											$exportOptions  =  array (); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											foreach  ( $configProfiles  as  $profile )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												$typeManagerExport  =  new  \LAM\TYPES\TypeManager ( $serverProfiles [ $profile ]); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												$typesExport  =  $typeManagerExport -> getConfiguredTypesForScope ( $scope ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												foreach  ( $typesExport  as  $typeExport )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
													if  (( $profile  !=  $_SESSION [ 'config' ] -> getName ())  ||  ( $typeExport -> getId ()  !=  $typeId ))  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
														$exportOptions [ $typeManagerExport -> getConfig () -> getName ()][ $typeExport -> getAlias ()]  =  $profile  .  '##'  .  $typeExport -> getId (); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
													} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											$exportOptions [ '*'  .  _ ( 'Global templates' )][ _ ( 'Global templates' )]  =  'templates*##' ; 
							 
						 
					
						
							
								
									
										
										
										
											2016-12-19 20:32:08 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2017-01-06 09:11:47 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											$select  =  new  htmlSelect ( 'exportProfiles_'  .  $typeId ,  $exportOptions ,  array (),  count ( $exportOptions )  <  10  ?  count ( $exportOptions ,  1 )  :  10 ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											$select -> setHasDescriptiveElements ( true ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											$select -> setContainsOptgroups ( true ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											$select -> setMultiSelect ( true ); 
							 
						 
					
						
							
								
									
										
										
										
											2016-12-19 20:32:08 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2017-01-06 09:11:47 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											$container -> addElement ( $select ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											$container -> addElement ( new  htmlHelpLink ( '363' ),  true ); 
							 
						 
					
						
							
								
									
										
										
										
											2012-10-28 14:37:54 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2017-01-06 09:11:47 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											$container -> addElement ( new  htmlSpacer ( null ,  '10px' ),  true ); 
							 
						 
					
						
							
								
									
										
										
										
											2016-12-19 20:32:08 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2017-01-06 09:11:47 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											$container -> addElement ( new  htmlOutputText ( _ ( " Master password " )),  true ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											$exportPasswd  =  new  htmlInputField ( 'passwd_e_'  .  $typeId ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											$exportPasswd -> setIsPassword ( true ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											$container -> addElement ( $exportPasswd ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											$container -> addElement ( new  htmlHelpLink ( '236' )); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											$container -> addElement ( new  htmlHiddenInput ( 'export' ,  '1' ),  true ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											$container -> addElement ( new  htmlHiddenInput ( 'typeId' ,  $typeId ),  true ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											$container -> addElement ( new  htmlHiddenInput ( 'name_'  .  $typeId ,  '_' ),  true ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											addSecurityTokenToMetaHTML ( $container ); 
							 
						 
					
						
							
								
									
										
										
										
											2016-12-19 20:32:08 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2017-01-06 09:11:47 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											parseHtml ( null ,  $container ,  array (),  false ,  $tabindex ,  'user' ); 
							 
						 
					
						
							
								
									
										
										
										
											2012-10-28 14:37:54 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2017-01-06 09:11:47 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											echo  '</form>' ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											echo  " </div> \n " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										} 
							 
						 
					
						
							
								
									
										
										
										
											2012-10-28 14:37:54 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-04-25 18:00:47 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								// form for delete action
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								echo  '<div id="deleteProfileDialog" class="hidden"><form id="deleteProfileForm" action="pdfmain.php" method="post">' ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									echo  _ ( " Do you really want to delete this PDF structure? " ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									echo  '<br><br><div class="nowrap">' ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									echo  _ ( " Structure name " )  .  ': <div id="deleteText" style="display: inline;"></div></div>' ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									echo  '<input id="profileDeleteType" type="hidden" name="profileDeleteType" value="">' ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									echo  '<input id="profileDeleteName" type="hidden" name="profileDeleteName" value="">' ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									echo  '<input type="hidden" name="deleteProfile" value="true">' ; 
							 
						 
					
						
							
								
									
										
										
										
											2015-05-15 19:16:46 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									echo  '<input type="hidden" name="'  .  getSecurityTokenName ()  .  '" value="'  .  getSecurityTokenValue ()  .  '">' ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-04-25 18:00:47 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								echo  '</form></div>' ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								include  '../main_footer.php' ;  
						 
					
						
							
								
									
										
										
										
											2017-01-05 20:40:48 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								/**  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  Imports  the  selected  PDF  structures . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ param  string  $typeId  type  id 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ param  array  $options  options 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ param  \LAMConfig []  $serverProfiles  server  profiles  ( name  =>  profile  object ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ param  \LAM\TYPES\TypeManager  $typeManager  type  manager 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ return  \htmlStatusMessage  message  or  null 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								function  importStructures ( $typeId ,  $options ,  & $serverProfiles ,  & $typeManager )  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									foreach  ( $options  as  $option )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$sourceConfName  =  $option [ 'conf' ]; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$sourceTypeId  =  $option [ 'typeId' ]; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$sourceName  =  $option [ 'name' ]; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$sourceTypeManager  =  new  \LAM\TYPES\TypeManager ( $serverProfiles [ $sourceConfName ]); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$sourceType  =  $sourceTypeManager -> getConfiguredType ( $sourceTypeId ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$targetType  =  $typeManager -> getConfiguredType ( $typeId ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										if  (( $sourceType  !=  null )  &&  ( $targetType  !=  null ))  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											try  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												\LAM\PDF\copyStructure ( $sourceType ,  $sourceName ,  $targetType ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											catch  ( \LAMException  $e )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												return  new  \htmlStatusMessage ( 'ERROR' ,  $e -> getTitle (),  $e -> getMessage ()); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									return  new  \htmlStatusMessage ( 'INFO' ,  _ ( 'Import successful' )); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								/**  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  Exports  the  selected  account  profile . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ param  string  $typeId  source  type  id 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ param  string  $name  profile  name 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ param  array  $options  options 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ param  \LAMConfig []  $serverProfiles  server  profiles  ( name  =>  profile  object ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ param  \LAM\TYPES\TypeManager  $typeManager  type  manager 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ return  \htmlStatusMessage  message  or  null 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								function  exportStructures ( $typeId ,  $name ,  $options ,  & $serverProfiles ,  & $typeManager )  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$sourceType  =  $typeManager -> getConfiguredType ( $typeId ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									if  ( $sourceType  ==  null )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										return  null ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									foreach  ( $options  as  $option )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$targetConfName  =  $option [ 'conf' ]; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										if  ( $targetConfName  ==  'templates*' )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											try  { 
							 
						 
					
						
							
								
									
										
										
										
											2017-01-06 09:11:47 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
												\LAM\PDF\copyStructureToTemplates ( $sourceType ,  $name ); 
							 
						 
					
						
							
								
									
										
										
										
											2017-01-05 20:40:48 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											catch  ( \LAMException  $e )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												return  new  \htmlStatusMessage ( 'ERROR' ,  $e -> getTitle (),  $e -> getMessage ()); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										else  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											$targetTypeId  =  $option [ 'typeId' ]; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											$targetTypeManager  =  new  \LAM\TYPES\TypeManager ( $serverProfiles [ $targetConfName ]); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											$targetType  =  $targetTypeManager -> getConfiguredType ( $targetTypeId ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											if  ( $targetType  !=  null )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												try  { 
							 
						 
					
						
							
								
									
										
										
										
											2017-01-06 09:11:47 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
													\LAM\PDF\copyStructure ( $sourceType ,  $name ,  $targetType ); 
							 
						 
					
						
							
								
									
										
										
										
											2017-01-05 20:40:48 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
												} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												catch  ( \LAMException  $e )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
													return  new  \htmlStatusMessage ( 'ERROR' ,  $e -> getTitle (),  $e -> getMessage ()); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									return  new  \htmlStatusMessage ( 'INFO' ,  _ ( 'Export successful' )); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2010-08-21 09:43:52 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								?>