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  \htmlTableExtendedInputField ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								use  \htmlSpacer ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								use  \htmlTableExtendedSelect ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								use  \htmlButton ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								use  \htmlOutputText ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								use  \htmlGroup ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								use  \htmlSelect ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								use  \htmlInputField ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								use  \htmlSubTitle ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								use  \htmlFieldset ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								use  \htmlInputTextarea ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								use  \htmlHiddenInput ;  
						 
					
						
							
								
									
										
										
										
											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 / ) 
							 
						 
					
						
							
								
									
										
										
										
											2007-11-22 19:50:26 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								  Copyright  ( C )  2003  -  2006   Michael  Duergner 
							 
						 
					
						
							
								
									
										
										
										
											2017-02-11 16:11:37 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								                2007  -  2017   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 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  Manages  creating / changing  of  pdf  structures . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								*/  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2005-06-21 20:58:32 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								/**  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								*  Displays  the  main  page  of  the  PDF  editor  where  the  user  can  select  the  displayed  entries .  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								*  
						 
					
						
							
								
									
										
										
										
											2007-10-24 17:31:14 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								*  @ author  Michael  Duergner  
						 
					
						
							
								
									
										
										
										
											2005-06-21 20:58:32 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								*  @ author  Roland  Gruber  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								*  @ package  PDF  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								*/  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2006-03-26 17:51:25 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								/** security functions */  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								include_once ( " ../../lib/security.inc " );  
						 
					
						
							
								
									
										
										
										
											2005-07-27 18:06:55 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								/** access to PDF configuration files */  
						 
					
						
							
								
									
										
										
										
											2004-05-31 09:38:59 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								include_once ( '../../lib/pdfstruct.inc' );  
						 
					
						
							
								
									
										
										
										
											2005-07-27 18:06:55 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								/** LDAP object */  
						 
					
						
							
								
									
										
										
										
											2004-05-31 09:38:59 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								include_once ( '../../lib/ldap.inc' );  
						 
					
						
							
								
									
										
										
										
											2005-07-27 18:06:55 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								/** LAM configuration */  
						 
					
						
							
								
									
										
										
										
											2004-05-31 09:38:59 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								include_once ( '../../lib/config.inc' );  
						 
					
						
							
								
									
										
										
										
											2005-07-27 18:06:55 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								/** module functions */  
						 
					
						
							
								
									
										
										
										
											2004-05-31 09:38:59 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								include_once ( '../../lib/modules.inc' );  
						 
					
						
							
								
									
										
										
										
											2005-07-27 18:06:55 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								/** XML functions */  
						 
					
						
							
								
									
										
										
										
											2004-05-30 13:43:42 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								include_once ( '../../lib/xml_parser.inc' );  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								// start session
  
						 
					
						
							
								
									
										
										
										
											2006-03-26 17:51:25 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								startSecureSession ();  
						 
					
						
							
								
									
										
										
										
											2017-02-11 16:11:37 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								enforceUserIsLoggedIn ();  
						 
					
						
							
								
									
										
										
										
											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-08-13 17:43:48 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								checkIfToolIsActive ( 'toolPDFEditor' );  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2004-05-30 13:43:42 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								setlanguage ();  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2015-05-15 19:16:46 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								if  ( ! empty ( $_POST ))  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									validateSecurityToken (); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											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 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2004-06-03 14:26:48 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								// Write $_POST variables to $_GET when form was submitted via post
  
						 
					
						
							
								
									
										
										
										
											2016-12-26 09:26:26 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								if  ( isset ( $_POST [ 'type' ]))  {  
						 
					
						
							
								
									
										
										
										
											2004-05-31 09:38:59 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									$_GET  =  $_POST ; 
							 
						 
					
						
							
								
									
										
										
										
											2016-12-26 09:26:26 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									if  ( $_POST [ 'pdfname' ]  ==  '' )  { 
							 
						 
					
						
							
								
									
										
										
										
											2004-08-03 19:07:31 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										unset ( $_GET [ 'pdfname' ]); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
									
										
										
										
											2004-05-30 13:43:42 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								}  
						 
					
						
							
								
									
										
										
										
											2004-05-31 09:38:59 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2016-12-26 09:26:26 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								$typeManager  =  new  \LAM\TYPES\TypeManager ();  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								$type  =  $typeManager -> getConfiguredType ( $_GET [ 'type' ]);  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								if  ( $type -> isHidden ()  ||  ! checkIfWriteAccessIsAllowed ( $type -> getId ()))  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									logNewMessage ( LOG_ERR ,  'User tried to access hidden PDF structure: '  .  $type -> getId ()); 
							 
						 
					
						
							
								
									
										
										
										
											2013-01-01 20:46:28 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									die (); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2005-06-21 20:58:32 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2004-06-03 14:26:48 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								// Abort and go back to main pdf structure page
  
						 
					
						
							
								
									
										
										
										
											2004-05-31 09:38:59 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								if ( isset ( $_GET [ 'abort' ]))  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									metarefresh ( 'pdfmain.php' ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									exit ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  
						 
					
						
							
								
									
										
										
										
											2005-07-06 13:48:55 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								// set new logo and headline
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								if  (( isset ( $_GET [ 'headline' ]))  &&  ( $_GET [ 'logoFile' ]  !=  $_SESSION [ 'currentPageDefinitions' ][ 'filename' ]))  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$_SESSION [ 'currentPageDefinitions' ][ 'filename' ]  =  $_GET [ 'logoFile' ]; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								if  (( isset ( $_GET [ 'headline' ]))  &&  ( $_GET [ 'headline' ]  !=  $_SESSION [ 'currentPageDefinitions' ][ 'headline' ]))  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$_SESSION [ 'currentPageDefinitions' ][ 'headline' ]  =  str_replace ( '<' , '' , str_replace ( '>' , '' , $_GET [ 'headline' ])); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  
						 
					
						
							
								
									
										
										
										
											2013-07-24 19:58:49 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								if  (( isset ( $_GET [ 'foldingmarks' ]))  &&  ( ! isset ( $_SESSION [ 'currentPageDefinitions' ][ 'foldingmarks' ])  ||  ( $_GET [ 'foldingmarks' ]  !=  $_SESSION [ 'currentPageDefinitions' ][ 'foldingmarks' ])))  {  
						 
					
						
							
								
									
										
										
										
											2013-03-16 13:39:33 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									$_SESSION [ 'currentPageDefinitions' ][ 'foldingmarks' ]  =  $_GET [ 'foldingmarks' ]; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  
						 
					
						
							
								
									
										
										
										
											2005-07-06 13:48:55 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2013-07-30 19:48:34 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								// Change section headline
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								foreach  ( $_GET  as  $key  =>  $value )  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									if  ( strpos ( $key ,  'section_' )  ===  0 )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$pos  =  substr ( $key ,  strlen ( 'section_' )); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$_SESSION [ 'currentPDFStructure' ][ $pos ][ 'attributes' ][ 'NAME' ]  =  $value ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2004-06-03 14:26:48 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								// Check if pdfname is valid, then save current structure to file and go to
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								// main pdf structure page
  
						 
					
						
							
								
									
										
										
										
											2010-05-26 17:54:00 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								$saveErrors  =  array ();  
						 
					
						
							
								
									
										
										
										
											2005-07-06 13:48:55 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								if ( isset ( $_GET [ 'submit' ]))  {  
						 
					
						
							
								
									
										
										
										
											2005-07-27 18:27:24 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									if ( ! isset ( $_GET [ 'pdfname' ])  ||  ! preg_match ( '/[a-zA-Z0-9\-\_]+/' , $_GET [ 'pdfname' ]))  { 
							 
						 
					
						
							
								
									
										
										
										
											2010-05-26 17:54:00 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										$saveErrors []  =  array ( 'ERROR' ,  _ ( 'PDF structure name not valid' ),  _ ( 'The name for that PDF-structure you submitted is not valid. A valid name must consist of the following characters: \'a-z\',\'A-Z\',\'0-9\',\'_\',\'-\'.' )); 
							 
						 
					
						
							
								
									
										
										
										
											2004-06-03 14:26:48 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									else  { 
							 
						 
					
						
							
								
									
										
										
										
											2017-01-05 20:05:17 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										$return  =  \LAM\PDF\savePDFStructure ( $type -> getId (),  $_GET [ 'pdfname' ]); 
							 
						 
					
						
							
								
									
										
										
										
											2005-07-27 18:06:55 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										if ( $return  ==  'ok' )  { 
							 
						 
					
						
							
								
									
										
										
										
											2010-05-26 17:54:00 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											metaRefresh ( 'pdfmain.php?savedSuccessfully='  .  $_GET [ 'pdfname' ]); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											exit ; 
							 
						 
					
						
							
								
									
										
										
										
											2016-12-26 09:26:26 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										} 
							 
						 
					
						
							
								
									
										
										
										
											2005-07-27 18:06:55 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										elseif ( $return  ==  'no perms' ){ 
							 
						 
					
						
							
								
									
										
										
										
											2010-05-26 17:54:00 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											$saveErrors []  =  array ( 'ERROR' ,  _ ( " Could not save PDF structure, access denied. " ),  $_GET [ 'pdfname' ]); 
							 
						 
					
						
							
								
									
										
										
										
											2005-07-27 18:06:55 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										} 
							 
						 
					
						
							
								
									
										
										
										
											2004-06-03 14:26:48 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
									
										
										
										
											2004-05-31 09:38:59 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								}  
						 
					
						
							
								
									
										
										
										
											2008-03-16 14:06:32 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								// add a new text field
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								elseif ( isset ( $_GET [ 'add_text' ]))  {  
						 
					
						
							
								
									
										
										
										
											2004-06-03 14:26:48 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									// Check if text for static text field is specified
 
							 
						 
					
						
							
								
									
										
										
										
											2017-02-18 20:10:06 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									if ( empty ( $_GET [ 'text_text' ]))  { 
							 
						 
					
						
							
								
									
										
										
										
											2004-06-03 14:26:48 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										StatusMessage ( 'ERROR' , _ ( 'No static text specified' ), _ ( 'The static text must contain at least one character.' )); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									else  { 
							 
						 
					
						
							
								
									
										
										
										
											2017-02-18 20:10:06 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										$entry  =  array ( array ( 'tag'  =>  'TEXT' , 'type'  =>  'complete' , 'level'  =>  '2' , 'value'  =>  str_replace ( " \r " ,  " \n " ,  $_GET [ 'text_text' ]))); 
							 
						 
					
						
							
								
									
										
										
										
											2008-03-16 14:06:32 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										// Insert new field in structure
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										array_splice ( $_SESSION [ 'currentPDFStructure' ], $_GET [ 'add_text_position' ], 0 , $entry ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								// add a new section with text headline
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								elseif ( isset ( $_GET [ 'add_sectionText' ]))  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									// Check if name for new section is specified when needed
 
							 
						 
					
						
							
								
									
										
										
										
											2013-07-30 19:48:34 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									if ( ! isset ( $_GET [ 'new_section_text' ])  ||  ( $_GET [ 'new_section_text' ]  ==  '' ))  { 
							 
						 
					
						
							
								
									
										
										
										
											2008-03-16 14:06:32 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										StatusMessage ( 'ERROR' , _ ( 'No section text specified' ), _ ( 'The headline for a new section must contain at least one character.' )); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									else  { 
							 
						 
					
						
							
								
									
										
										
										
											2016-12-26 09:26:26 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										$attributes  =  array (); 
							 
						 
					
						
							
								
									
										
										
										
											2013-07-30 19:48:34 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										$attributes [ 'NAME' ]  =  $_GET [ 'new_section_text' ]; 
							 
						 
					
						
							
								
									
										
										
										
											2008-03-16 14:06:32 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										$entry  =  array ( array ( 'tag'  =>  'SECTION' , 'type'  =>  'open' , 'level'  =>  '2' , 'attributes'  =>  $attributes ), array ( 'tag'  =>  'SECTION' , 'type'  =>  'close' , 'level'  =>  '2' )); 
							 
						 
					
						
							
								
									
										
										
										
											2004-06-03 14:26:48 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										// Insert new field in structure
 
							 
						 
					
						
							
								
									
										
										
										
											2008-03-16 14:06:32 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										array_splice ( $_SESSION [ 'currentPDFStructure' ], $_GET [ 'add_sectionText_position' ], 0 , $entry ); 
							 
						 
					
						
							
								
									
										
										
										
											2004-05-31 09:38:59 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  
						 
					
						
							
								
									
										
										
										
											2008-03-16 14:06:32 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								// Add a new section with item as headline
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								elseif ( isset ( $_GET [ 'add_section' ]))  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$attributes  =  array (); 
							 
						 
					
						
							
								
									
										
										
										
											2013-07-30 19:48:34 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										$attributes [ 'NAME' ]  =  '_'  .  $_GET [ 'new_section_item' ]; 
							 
						 
					
						
							
								
									
										
										
										
											2008-03-16 14:06:32 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										$entry  =  array ( array ( 'tag'  =>  'SECTION' , 'type'  =>  'open' , 'level'  =>  '2' , 'attributes'  =>  $attributes ), array ( 'tag'  =>  'SECTION' , 'type'  =>  'close' , 'level'  =>  '2' )); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										// Insert new field in structure
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										array_splice ( $_SESSION [ 'currentPDFStructure' ], $_GET [ 'add_section_position' ], 0 , $entry ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  
						 
					
						
							
								
									
										
										
										
											2004-06-03 14:26:48 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								// Add a new value field
  
						 
					
						
							
								
									
										
										
										
											2008-03-23 14:20:23 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								elseif ( isset ( $_GET [ 'add_new_field' ]))  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$field  =  array ( 'tag'  =>  'ENTRY' , 'type'  =>  'complete' , 'level'  =>  '3' , 'attributes'  =>  array ( 'NAME'  =>  $_GET [ 'new_field' ])); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$pos  =  0 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									// Find begin section to insert into
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									while ( $pos  <  $_GET [ 'add_field_position' ])  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										next ( $_SESSION [ 'currentPDFStructure' ]); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$pos ++ ; 
							 
						 
					
						
							
								
									
										
										
										
											2004-05-31 09:38:59 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
									
										
										
										
											2008-03-23 14:20:23 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									$current  =  next ( $_SESSION [ 'currentPDFStructure' ]); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$pos ++ ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									// End of section to insert into
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									while ( $current  &&  $current [ 'tag' ]  !=  'SECTION'  &&  $current [ 'type' ]  !=  'close' )  { 
							 
						 
					
						
							
								
									
										
										
										
											2004-05-31 09:38:59 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										$current  =  next ( $_SESSION [ 'currentPDFStructure' ]); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$pos ++ ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
									
										
										
										
											2008-03-23 14:20:23 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									// Insert new entry before closing section tag
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									array_splice ( $_SESSION [ 'currentPDFStructure' ], $pos , 0 , array ( $field )); 
							 
						 
					
						
							
								
									
										
										
										
											2004-05-31 09:38:59 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								}  
						 
					
						
							
								
									
										
										
										
											2013-07-30 19:48:34 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								foreach  ( $_GET  as  $key  =>  $value )  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									// remove entry or section
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									if  ( strpos ( $key ,  'remove_' )  ===  0 )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$pos  =  substr ( $key ,  strlen ( 'remove_' )); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$remove  =  $_SESSION [ 'currentPDFStructure' ][ $pos ]; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										// We have a section to remove
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										if ( $remove [ 'tag' ]  ==  " SECTION " )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											$end  =  $pos  +  1 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											// Find end of section to remove
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											while  ( isset ( $_SESSION [ 'currentPDFStructure' ][ $end ])  &&  ( $_SESSION [ 'currentPDFStructure' ][ $end ][ 'tag' ]  !=  'SECTION' ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												&&  ( $_SESSION [ 'currentPDFStructure' ][ $end ][ 'type' ]  !=  'close' ))  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												$end ++ ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											// Remove complete section with all value entries in it from structure
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											array_splice ( $_SESSION [ 'currentPDFStructure' ],  $pos ,  $end  -  $pos  +  1 ); 
							 
						 
					
						
							
								
									
										
										
										
											2004-05-31 09:38:59 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										} 
							 
						 
					
						
							
								
									
										
										
										
											2013-07-30 19:48:34 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										// We have a value entry to remove
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										elseif ( $remove [ 'tag' ]  ==  " ENTRY " )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											array_splice ( $_SESSION [ 'currentPDFStructure' ],  $pos ,  1 ); 
							 
						 
					
						
							
								
									
										
										
										
											2004-05-31 12:19:42 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										} 
							 
						 
					
						
							
								
									
										
										
										
											2013-07-30 19:48:34 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										// We hava a static text to remove
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										elseif ( $remove [ 'tag' ]  ==  " TEXT " )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											array_splice ( $_SESSION [ 'currentPDFStructure' ],  $pos ,  1 ); 
							 
						 
					
						
							
								
									
										
										
										
											2004-06-03 14:26:48 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										} 
							 
						 
					
						
							
								
									
										
										
										
											2013-07-30 19:48:34 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									// Move a section, static text field or value entry downwards
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									elseif  ( strpos ( $key ,  'down_' )  ===  0 )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$index  =  substr ( $key ,  strlen ( 'down_' )); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$tmp  =  $_SESSION [ 'currentPDFStructure' ][ $index ]; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$next  =  $_SESSION [ 'currentPDFStructure' ][ $index  +  1 ]; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										// We have a section or static text to move
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										if ( $tmp [ 'tag' ]  ==  'SECTION'  ||  $tmp [ 'tag' ]  ==  'TEXT' )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											$pos  =  0 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											$current  =  current ( $_SESSION [ 'currentPDFStructure' ]); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											// Find section or static text entry to move
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											while ( $pos  <  $index )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												$current  =  next ( $_SESSION [ 'currentPDFStructure' ]); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												$pos ++ ; 
							 
						 
					
						
							
								
									
										
										
										
											2004-06-03 14:26:48 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											} 
							 
						 
					
						
							
								
									
										
										
										
											2013-07-30 19:48:34 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											$borders  =  array (); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											// We have a section to move
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											if ( $current [ 'tag' ]  ==  'SECTION' ){ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												$borders [ $current [ 'type' ]][]  =  $pos ; 
							 
						 
					
						
							
								
									
										
										
										
											2004-05-31 12:19:42 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
												$current  =  next ( $_SESSION [ 'currentPDFStructure' ]); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												$pos ++ ; 
							 
						 
					
						
							
								
									
										
										
										
											2004-06-03 14:26:48 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
												// Find end of section to move
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												while ( $current  &&  $current [ 'tag' ]  !=  'SECTION'  &&  $current [ 'type' ]  !=  'close' )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
													$current  =  next ( $_SESSION [ 'currentPDFStructure' ]); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
													$pos ++ ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												$borders [ 'close' ][]  =  $pos ; 
							 
						 
					
						
							
								
									
										
										
										
											2004-05-31 12:19:42 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											} 
							 
						 
					
						
							
								
									
										
										
										
											2013-07-30 19:48:34 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											// We have a static text entry to move
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											elseif ( $current [ 'tag' ]  ==  'TEXT' )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												$borders [ 'open' ][]  =  $pos ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												$borders [ 'close' ][]  =  $pos ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											} 
							 
						 
					
						
							
								
									
										
										
										
											2004-05-31 12:19:42 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											$current  =  next ( $_SESSION [ 'currentPDFStructure' ]); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											$pos ++ ; 
							 
						 
					
						
							
								
									
										
										
										
											2013-07-30 19:48:34 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											// Find next section or static text entry in structure
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											if ( $current )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												// Next is a section
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												if ( $current [ 'tag' ]  ==  'SECTION' )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
													$borders [ $current [ 'type' ]][]  =  $pos ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
													$current  =  next ( $_SESSION [ 'currentPDFStructure' ]); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
													$pos ++ ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
													// Find end of this section
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
													while ( $current  &&  $current [ 'tag' ]  !=  'SECTION'  &&  $current [ 'type' ]  !=  'close' )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
														if ( $current [ 'tag' ]  ==  'SECTION' )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
															$borders [ $current [ 'type' ]][]  =  $pos ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
														} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
														$current  =  next ( $_SESSION [ 'currentPDFStructure' ]); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
														$pos ++ ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
													} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												// Next is static text entry
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												elseif ( $current [ 'tag' ]  ==  'TEXT' )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
													$borders [ 'open' ][]  =  $pos ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												$borders [ 'close' ][]  =  $pos ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											// Move only downwars if not bottenmost element of this structure
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											if ( count ( $borders [ 'open' ])  >  1 )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												// Calculate entries to move and move them
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												$cut_start  =  $borders [ 'open' ][ count ( $borders [ 'open' ])  -  1 ]; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												$cut_count  =  $borders [ 'close' ][ count ( $borders [ 'close' ])  -  1 ]  -  $borders [ 'open' ][ count ( $borders [ 'open' ])  -  1 ]  +  1 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												$insert_pos  =  $borders [ 'open' ][ count ( $borders [ 'open' ])  -  2 ]; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												$tomove  =  array_splice ( $_SESSION [ 'currentPDFStructure' ], $cut_start , $cut_count ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												array_splice ( $_SESSION [ 'currentPDFStructure' ], $insert_pos , 0 , $tomove ); 
							 
						 
					
						
							
								
									
										
										
										
											2004-06-03 14:26:48 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										} 
							 
						 
					
						
							
								
									
										
										
										
											2013-07-30 19:48:34 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										// We have a value entry to move; move it only if it is not the bottmmost
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										// element of this section.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										elseif ( $tmp [ 'tag' ]  ==  'ENTRY'  &&  $next [ 'tag' ]  ==  'ENTRY' )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											$_SESSION [ 'currentPDFStructure' ][ $index ]  =  $_SESSION [ 'currentPDFStructure' ][ $index  +  1 ]; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											$_SESSION [ 'currentPDFStructure' ][ $index  +  1 ]  =  $tmp ; 
							 
						 
					
						
							
								
									
										
										
										
											2004-05-31 12:19:42 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										} 
							 
						 
					
						
							
								
									
										
										
										
											2013-07-30 19:48:34 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									// Move a section, static text or value entry upwards
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									elseif  ( strpos ( $key ,  'up_' )  ===  0 )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$index  =  substr ( $key ,  strlen ( 'up_' )); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$tmp  =  $_SESSION [ 'currentPDFStructure' ][ $index ]; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$prev  =  $_SESSION [ 'currentPDFStructure' ][ $index  -  1 ]; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										// We have a section or static text to move
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										if ( $tmp [ 'tag' ]  ==  'SECTION'  ||  $tmp [ 'tag' ]  ==  'TEXT' )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											$pos  =  0 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											$borders  =  array (); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											$current  =  current ( $_SESSION [ 'currentPDFStructure' ]); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											// Add borders of sections and static text entry to array
 
							 
						 
					
						
							
								
									
										
										
										
											2004-06-03 14:26:48 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											if ( $current [ 'tag' ]  ==  'SECTION' )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												$borders [ $current [ 'type' ]][]  =  $pos ; 
							 
						 
					
						
							
								
									
										
										
										
											2013-07-30 19:48:34 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											elseif ( $current [ 'tag' ]  ==  'TEXT' )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												$borders [ 'open' ][]  =  $pos ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												$borders [ 'close' ][]  =  $pos ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											// Find all sections and statci text fields before the section or static
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											// text entry to move upwards
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											while ( $pos  <  $index )  { 
							 
						 
					
						
							
								
									
										
										
										
											2004-05-31 12:19:42 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
												$current  =  next ( $_SESSION [ 'currentPDFStructure' ]); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												$pos ++ ; 
							 
						 
					
						
							
								
									
										
										
										
											2013-07-30 19:48:34 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
												if ( $current [ 'tag' ]  ==  'SECTION' )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
													$borders [ $current [ 'type' ]][]  =  $pos ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												elseif ( $current [ 'tag' ]  ==  'TEXT' )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
													$borders [ 'open' ][]  =  $pos ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
													$borders [ 'close' ][]  =  $pos ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											// Move only when not topmost element
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											if ( count ( $borders [ 'close' ])  >  0 )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												// We have a section to move up
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												if ( $current [ 'tag' ]  ==  'SECTION' )  { 
							 
						 
					
						
							
								
									
										
										
										
											2004-06-03 14:26:48 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
													$current  =  next ( $_SESSION [ 'currentPDFStructure' ]); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
													$pos ++ ; 
							 
						 
					
						
							
								
									
										
										
										
											2013-07-30 19:48:34 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
													// Find end of section to move
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
													while ( $current  &&  $current [ 'tag' ]  !=  'SECTION'  &&  $current [ 'type' ]  !=  'close' )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
														$current  =  next ( $_SESSION [ 'currentPDFStructure' ]); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
														$pos ++ ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
													} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
													$borders [ 'close' ][]  =  $pos ; 
							 
						 
					
						
							
								
									
										
										
										
											2004-06-03 14:26:48 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
												} 
							 
						 
					
						
							
								
									
										
										
										
											2013-07-30 19:48:34 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
												// Calculate the entries to move and move them
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												$cut_start  =  $borders [ 'open' ][ count ( $borders [ 'open' ])  -  1 ]; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												$cut_count  =  $borders [ 'close' ][ count ( $borders [ 'close' ])  -  1 ]  -  $borders [ 'open' ][ count ( $borders [ 'open' ])  -  1 ]  +  1 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												$insert_pos  =  $borders [ 'open' ][ count ( $borders [ 'open' ])  -  2 ]; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												$tomove  =  array_splice ( $_SESSION [ 'currentPDFStructure' ], $cut_start , $cut_count ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												array_splice ( $_SESSION [ 'currentPDFStructure' ], $insert_pos , 0 , $tomove ); 
							 
						 
					
						
							
								
									
										
										
										
											2004-06-03 14:26:48 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											} 
							 
						 
					
						
							
								
									
										
										
										
											2004-05-31 12:19:42 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										} 
							 
						 
					
						
							
								
									
										
										
										
											2013-07-30 19:48:34 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										// We have a value entry to move; move it only if its not the topmost
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										// entry in this section
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										elseif ( $tmp [ 'tag' ]  ==  'ENTRY'  &&  $prev [ 'tag' ]  ==  'ENTRY' )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											$_SESSION [ 'currentPDFStructure' ][ $index ]  =  $prev ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											$_SESSION [ 'currentPDFStructure' ][ $index  -  1 ]  =  $tmp ; 
							 
						 
					
						
							
								
									
										
										
										
											2004-05-31 12:19:42 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										} 
							 
						 
					
						
							
								
									
										
										
										
											2004-05-31 09:38:59 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
									
										
										
										
											2010-12-21 14:30:42 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								}  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2004-06-03 14:26:48 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								// Load PDF structure from file if it is not defined in session
  
						 
					
						
							
								
									
										
										
										
											2004-05-31 09:38:59 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								if ( ! isset ( $_SESSION [ 'currentPDFStructure' ]))  {  
						 
					
						
							
								
									
										
										
										
											2004-06-03 14:26:48 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									// Load structure file to be edit
 
							 
						 
					
						
							
								
									
										
										
										
											2007-10-24 17:31:14 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									if ( isset ( $_GET [ 'edit' ]))  { 
							 
						 
					
						
							
								
									
										
										
										
											2017-01-05 20:05:17 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										$load  =  \LAM\PDF\loadPDFStructure ( $type -> getId (),  $_GET [ 'edit' ]); 
							 
						 
					
						
							
								
									
										
										
										
											2004-08-03 19:07:31 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										$_SESSION [ 'currentPDFStructure' ]  =  $load [ 'structure' ]; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$_SESSION [ 'currentPageDefinitions' ]  =  $load [ 'page_definitions' ]; 
							 
						 
					
						
							
								
									
										
										
										
											2005-07-27 18:06:55 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										$_GET [ 'pdfname' ]  =  $_GET [ 'edit' ]; 
							 
						 
					
						
							
								
									
										
										
										
											2004-05-31 09:38:59 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
									
										
										
										
											2004-06-03 14:26:48 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									// Load default structure file when creating a new one
 
							 
						 
					
						
							
								
									
										
										
										
											2004-05-31 09:38:59 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									else  { 
							 
						 
					
						
							
								
									
										
										
										
											2017-01-05 20:05:17 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										$load  =  \LAM\PDF\loadPDFStructure ( $type -> getId ()); 
							 
						 
					
						
							
								
									
										
										
										
											2004-08-03 19:07:31 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										$_SESSION [ 'currentPDFStructure' ]  =  $load [ 'structure' ]; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$_SESSION [ 'currentPageDefinitions' ]  =  $load [ 'page_definitions' ]; 
							 
						 
					
						
							
								
									
										
										
										
											2004-05-31 09:38:59 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2017-01-04 19:52:51 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								$availablePDFFields  =  getAvailablePDFFields ( $type -> getId ());  
						 
					
						
							
								
									
										
										
										
											2004-05-31 09:38:59 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2004-06-03 14:26:48 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								// Create the values for the dropdown boxes for section headline defined by
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								// value entries and fetch all available modules
  
						 
					
						
							
								
									
										
										
										
											2004-05-31 09:38:59 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								$modules  =  array ();  
						 
					
						
							
								
									
										
										
										
											2004-06-03 14:26:48 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								$section_items_array  =  array ();  
						 
					
						
							
								
									
										
										
										
											2004-05-31 09:38:59 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								$section_items  =  '' ;  
						 
					
						
							
								
									
										
										
										
											2010-04-05 10:13:37 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								$sortedModules  =  array ();  
						 
					
						
							
								
									
										
										
										
											2017-01-04 19:52:51 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								foreach ( $availablePDFFields  as  $module  =>  $fields )  {  
						 
					
						
							
								
									
										
										
										
											2010-04-05 10:13:37 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									if  ( $module  !=  'main' )  { 
							 
						 
					
						
							
								
									
										
										
										
											2016-12-26 09:26:26 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										$title  =  getModuleAlias ( $module ,  $type -> getScope ()); 
							 
						 
					
						
							
								
									
										
										
										
											2010-04-05 10:13:37 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									else  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$title  =  _ ( 'Main' ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$sortedModules [ $module ]  =  $title ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								natcasesort ( $sortedModules );  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								foreach ( $sortedModules  as  $module  =>  $title )  {  
						 
					
						
							
								
									
										
										
										
											2017-01-04 19:52:51 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									$values  =  $availablePDFFields [ $module ]; 
							 
						 
					
						
							
								
									
										
										
										
											2010-04-05 10:13:37 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									if  ( ! is_array ( $values )  ||  ( sizeof ( $values )  <  1 ))  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										continue ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
									
										
										
										
											2004-05-31 09:38:59 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									$modules []  =  $module ; 
							 
						 
					
						
							
								
									
										
										
										
											2010-04-05 10:13:37 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									$section_items  .=  " <optgroup label= \" "  .  $title  .  " \" \n > " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									natcasesort ( $values ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									foreach ( $values  as  $attribute  =>  $attributeLabel )  { 
							 
						 
					
						
							
								
									
										
										
										
											2004-06-03 14:26:48 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										$section_items_array []  =  $module  .  '_'  .  $attribute ; 
							 
						 
					
						
							
								
									
										
										
										
											2010-04-05 10:13:37 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										$section_items  .=  " <option value= \" "  .  $module  .  '_'  .  $attribute  .  " \" > "  .  $attributeLabel  .  " </option> \n " ; 
							 
						 
					
						
							
								
									
										
										
										
											2004-05-31 09:38:59 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
									
										
										
										
											2010-04-05 10:13:37 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									$section_items  .=  " </optgroup> \n " ; 
							 
						 
					
						
							
								
									
										
										
										
											2004-05-31 09:38:59 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								}  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								$modules  =  join ( ',' , $modules );  
						 
					
						
							
								
									
										
										
										
											2004-05-30 13:43:42 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								// print header
  
						 
					
						
							
								
									
										
										
										
											2010-01-01 17:21:46 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								include  '../main_header.php' ;  
						 
					
						
							
								
									
										
										
										
											2010-05-26 17:54:00 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								// print error messages if any
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								if  ( sizeof ( $saveErrors )  >  0 )  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									for  ( $i  =  0 ;  $i  <  sizeof ( $saveErrors );  $i ++ )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										call_user_func_array ( 'StatusMessage' ,  $saveErrors [ $i ]); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									echo  " <br> \n " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2010-12-21 14:30:42 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								$newFieldFieldElements  =  array ();  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								foreach ( $sortedModules  as  $module  =>  $title )  {  
						 
					
						
							
								
									
										
										
										
											2017-01-04 19:52:51 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									$fields  =  $availablePDFFields [ $module ]; 
							 
						 
					
						
							
								
									
										
										
										
											2010-12-21 14:30:42 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									if  ( isset ( $fields )  &&  is_array ( $fields )  &&  ( sizeof ( $fields )  >  0 ))  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$moduleFields  =  array (); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										foreach  ( $fields  as  $field  =>  $fieldLabel )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											$moduleFields [ $fieldLabel ]  =  $module  .  " _ "  .  $field ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$newFieldFieldElements [ $title ]  =  $moduleFields ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								// structure name
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								$structureName  =  '' ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								if  ( isset ( $_GET [ 'edit' ]))  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$structureName  =  $_GET [ 'edit' ]; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								elseif  ( isset ( $_GET [ 'pdfname' ]))  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$structureName  =  $_GET [ 'pdfname' ]; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								else  if  ( isset ( $_POST [ 'pdfname' ]))  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$structureName  =  $_POST [ 'pdfname' ]; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								// headline
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								$headline  =  'LDAP Account Manager' ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								if  ( isset ( $_SESSION [ 'currentPageDefinitions' ][ 'headline' ]))  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$headline  =  $_SESSION [ 'currentPageDefinitions' ][ 'headline' ]; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								// logo
  
						 
					
						
							
								
									
										
										
										
											2017-01-04 19:52:51 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								$logoFiles  =  \LAM\PDF\getAvailableLogos ();  
						 
					
						
							
								
									
										
										
										
											2010-12-21 14:30:42 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								$logos  =  array ( _ ( 'No logo' )  =>  'none' );  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								foreach ( $logoFiles  as  $logoFile )  {  
						 
					
						
							
								
									
										
										
										
											2016-12-26 09:26:26 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									$logos [ $logoFile [ 'filename' ]  .  ' ('  .  $logoFile [ 'infos' ][ 0 ]  .  ' x '  .  $logoFile [ 'infos' ][ 1 ]  .  " ) " ]  =  $logoFile [ 'filename' ]; 
							 
						 
					
						
							
								
									
										
										
										
											2010-12-21 14:30:42 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								}  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								$selectedLogo  =  array ( 'printLogo.jpg' );  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								if  ( isset ( $_SESSION [ 'currentPageDefinitions' ][ 'filename' ]))  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$selectedLogo  =  array ( $_SESSION [ 'currentPageDefinitions' ][ 'filename' ]); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2004-05-30 13:43:42 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								?> 
  
						 
					
						
							
								
									
										
										
										
											2013-07-24 19:58:49 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									< form  id = " inputForm "  action = " pdfpage.php "  method = " post "  onSubmit = " saveScrollPosition('inputForm') " > 
							 
						 
					
						
							
								
									
										
										
										
											2004-05-30 13:43:42 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								< ? php  
						 
					
						
							
								
									
										
										
										
											2017-01-04 19:52:51 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								$sectionElements  =  array ();  
						 
					
						
							
								
									
										
										
										
											2010-12-21 14:30:42 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								$nonTextSectionElements  =  array ();  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								$container  =  new  htmlTable ();  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								$container -> addElement ( new  htmlTitle ( _ ( 'PDF editor' )),  true );  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								// main content
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								$mainContent  =  new  htmlTable ();  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								$structureNameInput  =  new  htmlTableExtendedInputField ( _ ( " Structure name " ),  'pdfname' ,  $structureName ,  '360' );  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								$structureNameInput -> setRequired ( true );  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								$mainContent -> addElement ( $structureNameInput ,  true );  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								$mainContent -> addElement ( new  htmlTableExtendedInputField ( _ ( 'Headline' ),  'headline' ,  $headline ),  true );  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								$logoSelect  =  new  htmlTableExtendedSelect ( 'logoFile' ,  $logos ,  $selectedLogo ,  _ ( 'Logo' ));  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								$logoSelect -> setHasDescriptiveElements ( true );  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								$mainContent -> addElement ( $logoSelect ,  true );  
						 
					
						
							
								
									
										
										
										
											2013-03-16 13:39:33 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								$foldingMarks  =  'no' ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								if  ( isset ( $_SESSION [ 'currentPageDefinitions' ][ 'foldingmarks' ]))  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$foldingMarks  =  $_SESSION [ 'currentPageDefinitions' ][ 'foldingmarks' ]; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								$possibleFoldingMarks  =  array ( _ ( 'No' )  =>  'no' ,  _ ( 'Yes' )  =>  'standard' );  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								$foldingMarksSelect  =  new  htmlTableExtendedSelect ( 'foldingmarks' ,  $possibleFoldingMarks ,  array ( $foldingMarks ),  _ ( 'Folding marks' ));  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								$foldingMarksSelect -> setHasDescriptiveElements ( true );  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								$mainContent -> addElement ( $foldingMarksSelect ,  true );  
						 
					
						
							
								
									
										
										
										
											2010-12-21 14:30:42 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								$mainContent -> addElement ( new  htmlSpacer ( null ,  '30px' ),  true );  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								// PDF structure
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								// print every entry in the current structure
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								$structureContent  =  new  htmlTable ();  
						 
					
						
							
								
									
										
										
										
											2013-07-30 19:48:34 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								for  ( $key  =  0 ;  $key  <  sizeof ( $_SESSION [ 'currentPDFStructure' ]);  $key ++ )  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$entry  =  $_SESSION [ 'currentPDFStructure' ][ $key ]; 
							 
						 
					
						
							
								
									
										
										
										
											2010-12-21 14:30:42 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									// create the up/down/remove links
 
							 
						 
					
						
							
								
									
										
										
										
											2016-12-26 09:26:26 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									$linkBase  =  'pdfpage.php?type='  .  $type -> getId ()  .  '&pdfname='  .  $structureName  .  '&headline='  .  $headline  .  '&logoFile='  .  $selectedLogo [ 0 ]  .  '&foldingmarks='  .  $foldingMarks ; 
							 
						 
					
						
							
								
									
										
										
										
											2013-07-30 19:48:34 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									$linkUp  =  new  htmlButton ( 'up_'  .  $key ,  'up.gif' ,  true ); 
							 
						 
					
						
							
								
									
										
										
										
											2010-12-21 14:30:42 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									$linkUp -> setTitle ( _ ( " Up " )); 
							 
						 
					
						
							
								
									
										
										
										
											2013-07-30 19:48:34 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									$linkDown  =  new  htmlButton ( 'down_'  .  $key ,  'down.gif' ,  true ); 
							 
						 
					
						
							
								
									
										
										
										
											2010-12-21 14:30:42 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									$linkDown -> setTitle ( _ ( " Down " )); 
							 
						 
					
						
							
								
									
										
										
										
											2013-07-30 19:48:34 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									$linkRemove  =  new  htmlButton ( 'remove_'  .  $key ,  'delete.gif' ,  true ); 
							 
						 
					
						
							
								
									
										
										
										
											2010-12-21 14:30:42 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									$linkRemove -> setTitle ( _ ( " Remove " )); 
							 
						 
					
						
							
								
									
										
										
										
											2013-07-30 19:48:34 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									$emptyBox  =  new  htmlOutputText ( '' ); 
							 
						 
					
						
							
								
									
										
										
										
											2004-05-30 13:43:42 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
									// We have a new section to start
 
							 
						 
					
						
							
								
									
										
										
										
											2017-01-04 19:52:51 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
									if (( $entry [ 'tag' ]  ==  " SECTION " )  &&  ( $entry [ 'type' ]  ==  'open' ))  { 
							 
						 
					
						
							
								
									
										
										
										
											2004-05-30 13:43:42 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										$name  =  $entry [ 'attributes' ][ 'NAME' ]; 
							 
						 
					
						
							
								
									
										
										
										
											2010-05-02 15:10:20 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										if ( preg_match ( " /^_[a-zA-Z0-9_]+_[a-zA-Z0-9_]+/ " , $name ))  { 
							 
						 
					
						
							
								
									
										
										
										
											2017-01-04 19:52:51 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											$section_headline  =  translateFieldIDToName ( substr ( $name , 1 ),  $type -> getScope (),  $availablePDFFields ); 
							 
						 
					
						
							
								
									
										
										
										
											2008-03-23 10:57:34 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										else  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											$section_headline  =  $name ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										} 
							 
						 
					
						
							
								
									
										
										
										
											2010-12-21 14:30:42 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										$nonTextSectionElements [ $section_headline ]  =  $key ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$sectionElements [ $section_headline ]  =  $key ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$structureContent -> addElement ( new  htmlSpacer ( null ,  '15px' ),  true ); 
							 
						 
					
						
							
								
									
										
										
										
											2004-06-03 14:26:48 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										// Section headline is a value entry
 
							 
						 
					
						
							
								
									
										
										
										
											2010-05-02 15:10:20 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										if ( preg_match ( " /^_[a-zA-Z0-9_]+_[a-zA-Z0-9_]+/ " , $name ))  { 
							 
						 
					
						
							
								
									
										
										
										
											2010-12-21 14:30:42 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											$headlineElements  =  array (); 
							 
						 
					
						
							
								
									
										
										
										
											2004-06-03 14:26:48 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											foreach ( $section_items_array  as  $item )  { 
							 
						 
					
						
							
								
									
										
										
										
											2017-01-04 19:52:51 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
												$headlineElements [ translateFieldIDToName ( $item ,  $type -> getScope (),  $availablePDFFields )]  =  '_'  .  $item ; 
							 
						 
					
						
							
								
									
										
										
										
											2004-06-03 14:26:48 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											} 
							 
						 
					
						
							
								
									
										
										
										
											2010-12-21 14:30:42 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											$sectionHeadlineSelect  =  new  htmlSelect ( 'section_'  .  $key ,  $headlineElements ,  array ( $name )); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											$sectionHeadlineSelect -> setHasDescriptiveElements ( true ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											$sectionHeadlineGroup  =  new  htmlGroup (); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											$sectionHeadlineGroup -> addElement ( $sectionHeadlineSelect ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											$sectionHeadlineGroup -> colspan  =  2 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											$structureContent -> addElement ( $sectionHeadlineGroup ); 
							 
						 
					
						
							
								
									
										
										
										
											2004-06-03 14:26:48 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										// Section headline is a user text
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										else  { 
							 
						 
					
						
							
								
									
										
										
										
											2010-12-21 14:30:42 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											$sectionHeadlineInput  =  new  htmlInputField ( 'section_'  .  $key ,  $section_headline ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											$sectionHeadlineGroup  =  new  htmlGroup (); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											$sectionHeadlineGroup -> addElement ( $sectionHeadlineInput ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											$sectionHeadlineGroup -> colspan  =  2 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											$structureContent -> addElement ( $sectionHeadlineGroup ); 
							 
						 
					
						
							
								
									
										
										
										
											2004-06-03 14:26:48 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										} 
							 
						 
					
						
							
								
									
										
										
										
											2013-07-30 19:48:34 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										if  ( $key  !=  0 )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											$structureContent -> addElement ( $linkUp ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										else  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											$structureContent -> addElement ( $emptyBox ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$hasAdditionalSections  =  false ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										for  ( $a  =  $key  +  1 ;  $a  <  sizeof ( $_SESSION [ 'currentPDFStructure' ]);  $a ++ )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											if  ((( $_SESSION [ 'currentPDFStructure' ][ $a ][ 'tag' ]  ==  " SECTION " )  &&  ( $_SESSION [ 'currentPDFStructure' ][ $a ][ 'type' ]  ==  " open " )) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												||  ( $_SESSION [ 'currentPDFStructure' ][ $a ][ 'tag' ]  ==  " TEXT " ))  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												$hasAdditionalSections  =  true ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												break ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										if  ( $hasAdditionalSections )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											$structureContent -> addElement ( $linkDown ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										else  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											$structureContent -> addElement ( $emptyBox ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										} 
							 
						 
					
						
							
								
									
										
										
										
											2010-12-21 14:30:42 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										$structureContent -> addElement ( $linkRemove ,  true ); 
							 
						 
					
						
							
								
									
										
										
										
											2004-05-30 13:43:42 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									// We have to include a static text.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									elseif ( $entry [ 'tag' ]  ==  " TEXT " )  { 
							 
						 
					
						
							
								
									
										
										
										
											2004-06-03 14:26:48 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										// Add current satic text for dropdown box needed for the position when inserting a new
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										// section or static text entry
 
							 
						 
					
						
							
								
									
										
										
										
											2010-12-21 14:30:42 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										$sectionElements [ _ ( 'Static text' )]  =  $key  +  1 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$structureContent -> addElement ( new  htmlSpacer ( null ,  '15px' ),  true ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$sectionHeadlineOutput  =  new  htmlOutputText ( _ ( 'Static text' )); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$sectionHeadlineOutput -> colspan  =  2 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$structureContent -> addElement ( $sectionHeadlineOutput ); 
							 
						 
					
						
							
								
									
										
										
										
											2013-07-30 19:48:34 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										if  ( $key  !=  0 )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											$structureContent -> addElement ( $linkUp ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										else  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											$structureContent -> addElement ( $emptyBox ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										if  ( $key  !=  sizeof ( $_SESSION [ 'currentPDFStructure' ])  -  1 )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											$structureContent -> addElement ( $linkDown ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										else  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											$structureContent -> addElement ( $emptyBox ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										} 
							 
						 
					
						
							
								
									
										
										
										
											2010-12-21 14:30:42 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										$structureContent -> addElement ( $linkRemove ,  true ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$structureContent -> addElement ( new  htmlSpacer ( '10px' ,  null )); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$staticTextOutput  =  new  htmlOutputText ( $entry [ 'value' ]); 
							 
						 
					
						
							
								
									
										
										
										
											2017-06-25 07:47:32 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										$staticTextOutput -> setPreformatted (); 
							 
						 
					
						
							
								
									
										
										
										
											2010-12-21 14:30:42 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										$structureContent -> addElement ( $staticTextOutput ,  true ); 
							 
						 
					
						
							
								
									
										
										
										
											2004-05-30 13:43:42 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									// We have to include an entry from the account
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									elseif ( $entry [ 'tag' ]  ==  " ENTRY " )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										// Get name of current entry
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										$name  =  $entry [ 'attributes' ][ 'NAME' ]; 
							 
						 
					
						
							
								
									
										
										
										
											2010-12-21 14:30:42 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										$structureContent -> addElement ( new  htmlSpacer ( '10px' ,  null )); 
							 
						 
					
						
							
								
									
										
										
										
											2017-01-04 19:52:51 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										$fieldOutput  =  new  htmlOutputText ( translateFieldIDToName ( $name ,  $type -> getScope (),  $availablePDFFields )); 
							 
						 
					
						
							
								
									
										
										
										
											2010-12-21 14:30:42 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										$structureContent -> addElement ( $fieldOutput ); 
							 
						 
					
						
							
								
									
										
										
										
											2013-07-30 19:48:34 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										if  ( $_SESSION [ 'currentPDFStructure' ][ $key  -  1 ][ 'tag' ]  !=  'SECTION' )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											$structureContent -> addElement ( $linkUp ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										else  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											$structureContent -> addElement ( $emptyBox ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										if  ( $_SESSION [ 'currentPDFStructure' ][ $key  +  1 ][ 'tag' ]  !=  'SECTION' )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											$structureContent -> addElement ( $linkDown ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										else  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											$structureContent -> addElement ( $emptyBox ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										} 
							 
						 
					
						
							
								
									
										
										
										
											2010-12-21 14:30:42 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										$structureContent -> addElement ( $linkRemove ,  true ); 
							 
						 
					
						
							
								
									
										
										
										
											2004-05-30 13:43:42 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  
						 
					
						
							
								
									
										
										
										
											2017-01-04 19:52:51 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								$sectionElements [ _ ( 'End' )]  =  sizeof ( $_SESSION [ 'currentPDFStructure' ]);  
						 
					
						
							
								
									
										
										
										
											2010-12-21 14:30:42 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								$structureContent -> colspan  =  3 ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								$mainContent -> addElement ( $structureContent );  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								$container -> addElement ( new  htmlFieldset ( $mainContent ),  true );  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								$container -> addElement ( new  htmlSpacer ( null ,  '15px' ),  true );  
						 
					
						
							
								
									
										
										
										
											2010-04-05 10:13:37 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2010-12-21 14:30:42 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								// new section
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								$container -> addElement ( new  htmlSubTitle ( _ ( 'New section' )),  true );  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								$newSectionContent  =  new  htmlTable ();  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								// add new section with text title
  
						 
					
						
							
								
									
										
										
										
											2013-07-30 19:48:34 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								$newSectionContent -> addElement ( new  htmlTableExtendedInputField ( _ ( " Headline " ),  'new_section_text' ));  
						 
					
						
							
								
									
										
										
										
											2010-12-21 14:30:42 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								$newSectionPositionSelect1  =  new  htmlTableExtendedSelect ( 'add_sectionText_position' ,  $sectionElements ,  array (),  _ ( 'Position' ));  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								$newSectionPositionSelect1 -> setHasDescriptiveElements ( true );  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								$newSectionPositionSelect1 -> setSortElements ( false );  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								$newSectionContent -> addElement ( $newSectionPositionSelect1 );  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								$newSectionContent -> addElement ( new  htmlButton ( 'add_sectionText' ,  _ ( 'Add' )),  true );  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								// add new section with field title
  
						 
					
						
							
								
									
										
										
										
											2013-07-30 19:48:34 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								$newSectionFieldSelect  =  new  htmlTableExtendedSelect ( 'new_section_item' ,  $newFieldFieldElements ,  array (),  _ ( " Headline " ));  
						 
					
						
							
								
									
										
										
										
											2010-12-21 14:30:42 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								$newSectionFieldSelect -> setHasDescriptiveElements ( true );  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								$newSectionFieldSelect -> setContainsOptgroups ( true );  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								$newSectionContent -> addElement ( $newSectionFieldSelect );  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								$newSectionPositionSelect2  =  new  htmlTableExtendedSelect ( 'add_section_position' ,  $sectionElements ,  array (),  _ ( 'Position' ));  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								$newSectionPositionSelect2 -> setHasDescriptiveElements ( true );  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								$newSectionPositionSelect2 -> setSortElements ( false );  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								$newSectionContent -> addElement ( $newSectionPositionSelect2 );  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								$newSectionContent -> addElement ( new  htmlButton ( 'add_section' ,  _ ( 'Add' )));  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								$container -> addElement ( new  htmlFieldset ( $newSectionContent ,  _ ( " Section " )),  true );  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								$container -> addElement ( new  htmlSpacer ( null ,  '10px' ),  true );  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								$newTextFieldContent  =  new  htmlTable ();  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								$newTextFieldContent -> addElement ( new  htmlInputTextarea ( 'text_text' ,  '' ,  40 ,  3 ));  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								$newTextFieldPositionSelect  =  new  htmlTableExtendedSelect ( 'add_text_position' ,  $sectionElements ,  array (),  _ ( 'Position' ));  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								$newTextFieldPositionSelect -> setHasDescriptiveElements ( true );  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								$newTextFieldPositionSelect -> setSortElements ( false );  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								$newTextFieldContent -> addElement ( $newTextFieldPositionSelect );  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								$newTextFieldContent -> addElement ( new  htmlButton ( 'add_text' ,  _ ( 'Add' )));  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								$container -> addElement ( new  htmlFieldset ( $newTextFieldContent ,  _ ( " Text field " )),  true );  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								// new field
  
						 
					
						
							
								
									
										
										
										
											2017-01-04 19:52:51 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								if  ( ! empty ( $nonTextSectionElements ))  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$container -> addElement ( new  htmlSubTitle ( _ ( 'New field' )),  true ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$newFieldContainer  =  new  htmlTable (); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$newFieldFieldSelect  =  new  htmlSelect ( 'new_field' ,  $newFieldFieldElements ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$newFieldFieldSelect -> setHasDescriptiveElements ( true ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$newFieldFieldSelect -> setContainsOptgroups ( true ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$newFieldContainer -> addElement ( $newFieldFieldSelect ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$newFieldContainer -> addElement ( new  htmlSpacer ( '10px' ,  null )); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$newFieldSectionSelect  =  new  htmlTableExtendedSelect ( 'add_field_position' ,  $nonTextSectionElements ,  array (),  _ ( 'Position' )); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$newFieldSectionSelect -> setHasDescriptiveElements ( true ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$newFieldContainer -> addElement ( $newFieldSectionSelect ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$newFieldContainer -> addElement ( new  htmlButton ( 'add_new_field' ,  _ ( 'Add' ))); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$container -> addElement ( new  htmlFieldset ( $newFieldContainer ),  true ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									$container -> addElement ( new  htmlSpacer ( null ,  '20px' ),  true ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  
						 
					
						
							
								
									
										
										
										
											2010-12-21 14:30:42 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								// buttons
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								$buttonContainer  =  new  htmlTable ();  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								$saveButton  =  new  htmlButton ( 'submit' ,  _ ( " Save " ));  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								$saveButton -> setIconClass ( 'saveButton' );  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								$cancelButton  =  new  htmlButton ( 'abort' ,  _ ( " Cancel " ));  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								$cancelButton -> setIconClass ( 'cancelButton' );  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								$buttonContainer -> addElement ( $saveButton );  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								$buttonContainer -> addElement ( $cancelButton );  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								$buttonContainer -> addElement ( new  htmlHiddenInput ( 'modules' ,  $modules ));  
						 
					
						
							
								
									
										
										
										
											2016-12-26 09:26:26 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								$buttonContainer -> addElement ( new  htmlHiddenInput ( 'type' ,  $type -> getId ()));  
						 
					
						
							
								
									
										
										
										
											2010-12-21 14:30:42 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								$container -> addElement ( $buttonContainer ,  true );  
						 
					
						
							
								
									
										
										
										
											2015-05-15 19:16:46 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								addSecurityTokenToMetaHTML ( $container );  
						 
					
						
							
								
									
										
										
										
											2010-12-21 14:30:42 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								$tabindex  =  1 ;  
						 
					
						
							
								
									
										
										
										
											2016-12-26 09:26:26 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								parseHtml ( null ,  $container ,  array (),  false ,  $tabindex ,  $type -> getScope ());  
						 
					
						
							
								
									
										
										
										
											2010-12-21 14:30:42 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2013-07-24 19:58:49 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								if  (( sizeof ( $saveErrors )  ==  0 )  &&  isset ( $_POST [ 'scrollPositionTop' ])  &&  isset ( $_POST [ 'scrollPositionLeft' ]))  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									// scroll to last position
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									echo  ' < script  type = " text/javascript " > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										jQuery ( document ) . ready ( function ()  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											jQuery ( window ) . scrollTop ( ' . $_POST[' scrollPositionTop '] . ' ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											jQuery ( window ) . scrollLeft ( '. $_POST[' scrollPositionLeft '] . ' ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									}); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									</ script > ' ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2010-12-21 14:30:42 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								echo  '</form>' ;  
						 
					
						
							
								
									
										
										
										
											2010-08-21 09:43:52 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								include  '../main_footer.php' ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2010-04-05 10:13:37 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								/**  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  Translates  a  given  field  ID  ( e . g .  inetOrgPerson_givenName )  to  its  descriptive  name . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ param  String  $id  field  ID 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 *  @ param  String  $scope  account  type 
							 
						 
					
						
							
								
									
										
										
										
											2017-01-04 19:52:51 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								 *  @ param  array  $availablePDFFields  available  PDF  fields 
							 
						 
					
						
							
								
									
										
										
										
											2010-04-05 10:13:37 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								 */ 
							 
						 
					
						
							
								
									
										
										
										
											2017-01-04 19:52:51 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								function  translateFieldIDToName ( $id ,  $scope ,  $availablePDFFields )  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									foreach  ( $availablePDFFields  as  $module  =>  $fields )  { 
							 
						 
					
						
							
								
									
										
										
										
											2010-04-05 10:13:37 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										if  ( ! ( strpos ( $id ,  $module  .  '_' )  ===  0 ))  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											continue ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										foreach  ( $fields  as  $name  =>  $label )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											if  ( $id  ==  $module  .  '_'  .  $name )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												if  ( $module  ==  'main' )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
													return  _ ( 'Main' )  .  ': '  .  $label ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												else   { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
													return  getModuleAlias ( $module ,  $scope )  .  ': '  .  $label ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
												} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									return  $id ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								?>