From 392b0ca3ec22e790a49e21776720fbe36be844c2 Mon Sep 17 00:00:00 2001
From: warmels <sdos@astron.nl>
Date: Fri, 31 Aug 2007 07:35:27 +0000
Subject: [PATCH] BugID: 1079

aantal bugs gefixt
---
 .../tool/CRAFT/admin_contacten/bewerken.php   |  14 +-
 .../tool/CRAFT/admin_contacten/toevoegen.php  |  16 +-
 .../comp_bewerken.php                         | 129 ++++++++++++++++-
 .../comp_toevoegen.php                        | 137 ++++++++++++++++--
 .../comp_toevoegen_functies.php               |  44 ++++++
 .../comp_toevoegen_melding.php                | 112 +++++++++++++-
 .../melding_bewerken.php                      |   4 +-
 7 files changed, 421 insertions(+), 35 deletions(-)

diff --git a/support/tool/CRAFT/admin_contacten/bewerken.php b/support/tool/CRAFT/admin_contacten/bewerken.php
index 549cd3267c7..95681f2a9a1 100644
--- a/support/tool/CRAFT/admin_contacten/bewerken.php
+++ b/support/tool/CRAFT/admin_contacten/bewerken.php
@@ -57,7 +57,7 @@
 							if ($_POST['Contact_Postcode'] != '' && !postcode_check($_POST['Contact_Postcode']))
 								return false;
 						} else if (!isset($_POST['parent_gegevens'])) return false;
-	
+/*	
 	    			//e-mail
 						if (isset($_POST['Contact_Email'])) {
 							if ($_POST['Contact_Email'] != '' && !mail_check($_POST['Contact_Email']))
@@ -81,7 +81,7 @@
 							if ($_POST['Contact_Telefoon_Fax'] != '' && !telefoon_check($_POST['Contact_Telefoon_Fax']))
 								return false;
 						}
-	
+	*/
 	    			return true;
 					}
 					
@@ -190,30 +190,30 @@
 					    			<td>E-mail:</td>
 					    			<td><input name="Contact_Email" type="text" value="<?php if(isset($_POST['opslaan']) && $_POST['opslaan'] == 1) echo(htmlentities($_POST['Contact_Email'], ENT_QUOTES)); else echo($row['Contact_Email']); ?>">
 					    				<?php
-					    					if(isset($_POST['opslaan']) && $_POST['opslaan'] == 1) { 
+					 /*   					if(isset($_POST['opslaan']) && $_POST['opslaan'] == 1) { 
 					    						if (($parent_gegevens == 1 && $_POST['Contact_Email'] != '' && !mail_check($_POST['Contact_Email'])) ||
 					    							($parent_gegevens == 0 && ($_POST['Contact_Email'] == '' || !mail_check($_POST['Contact_Email']))))
 					    						 		echo('<b>* Er is geen (geldig) e-mailadres ingevoerd!</b>');
-					    					}
+					    					}*/
 					    				 ?>
 				    				</td>
 					    		</tr>
 					    		<tr>
 					    			<td>Telefoon (vast):</td>
 					    			<td><input name="Contact_Telefoon_Vast" type="text" value="<?php if(isset($_POST['opslaan']) && $_POST['opslaan'] == 1) echo(htmlentities($_POST['Contact_Telefoon_Vast'], ENT_QUOTES)); else echo($row['Contact_Telefoon_Vast']); ?>">
-					    				<?php if(isset($_POST['opslaan']) && $_POST['opslaan'] == 1 && $_POST['Contact_Telefoon_Vast']!= '' && !telefoon_check($_POST['Contact_Telefoon_Vast'])) echo('<b>* Er is geen (geldig) telefoonnummer ingevoerd!</b>');?>
+					    				<?php /* if(isset($_POST['opslaan']) && $_POST['opslaan'] == 1 && $_POST['Contact_Telefoon_Vast']!= '' && !telefoon_check($_POST['Contact_Telefoon_Vast'])) echo('<b>* Er is geen (geldig) telefoonnummer ingevoerd!</b>'); */ ?>
 				    				</td>
 					    		</tr>
 					    		<tr>
 					    			<td>Telefoon (mobiel):</td>
 					    			<td><input name="Contact_Telefoon_Mobiel" type="text" value="<?php if(isset($_POST['opslaan']) && $_POST['opslaan'] == 1) echo(htmlentities($_POST['Contact_Telefoon_Mobiel'], ENT_QUOTES)); else echo($row['Contact_Telefoon_Mobiel']); ?>">
-					    				<?php if(isset($_POST['opslaan']) && $_POST['opslaan'] == 1 && $_POST['Contact_Telefoon_Mobiel']!= '' && !telefoon_check($_POST['Contact_Telefoon_Mobiel'])) echo('<b>* Er is geen (geldig) telefoonnummer ingevoerd!</b>');?>
+					    				<?php /* if(isset($_POST['opslaan']) && $_POST['opslaan'] == 1 && $_POST['Contact_Telefoon_Mobiel']!= '' && !telefoon_check($_POST['Contact_Telefoon_Mobiel'])) echo('<b>* Er is geen (geldig) telefoonnummer ingevoerd!</b>'); */ ?>
 				    				</td>
 					    		</tr>
 					    		<tr>
 					    			<td>Telefoon (fax):</td>
 					    			<td><input name="Contact_Telefoon_Fax" type="text" value="<?php if(isset($_POST['opslaan']) && $_POST['opslaan'] == 1) echo(htmlentities($_POST['Contact_Telefoon_Fax'], ENT_QUOTES)); else echo($row['Contact_Fax']); ?>">
-					    				<?php if(isset($_POST['opslaan']) && $_POST['opslaan'] == 1 && $_POST['Contact_Telefoon_Fax']!= '' && !telefoon_check($_POST['Contact_Telefoon_Fax'])) echo('<b>* Er is geen (geldig) telefoonnummer ingevoerd!</b>');?>
+					    				<?php /* if(isset($_POST['opslaan']) && $_POST['opslaan'] == 1 && $_POST['Contact_Telefoon_Fax']!= '' && !telefoon_check($_POST['Contact_Telefoon_Fax'])) echo('<b>* Er is geen (geldig) telefoonnummer ingevoerd!</b>'); */ ?>
 				   					</td>
 					    		</tr>
 					    		<tr>
diff --git a/support/tool/CRAFT/admin_contacten/toevoegen.php b/support/tool/CRAFT/admin_contacten/toevoegen.php
index 287d1bd946d..f9032ff2caf 100644
--- a/support/tool/CRAFT/admin_contacten/toevoegen.php
+++ b/support/tool/CRAFT/admin_contacten/toevoegen.php
@@ -65,7 +65,7 @@
 								return false;
 						} else if (!isset($_POST['parent_gegevens'])) return false;
 	   			
-	
+	/*
 						if (isset($_POST['Contact_Telefoon_Vast'])) {
 							if ($_POST['Contact_Telefoon_Vast'] != '' && !telefoon_check($_POST['Contact_Telefoon_Vast']))
 								return false;
@@ -82,7 +82,7 @@
 							if ($_POST['Contact_Telefoon_Fax'] != '' && !telefoon_check($_POST['Contact_Telefoon_Fax']))
 								return false;
 						}
-	
+	*/
 	    			return true;
 	    		}
 	    		
@@ -203,7 +203,7 @@
 			    				  		$vast = $_POST['Contact_Telefoon_Vast'];
 			    				  	else $vast = '';
 			    				  	
-			    				  	if(isset($_POST['opslaan'])) {
+/*			    				  	if(isset($_POST['opslaan'])) {
 												if(isset($_POST['parent_gegevens'])) {
 													if ($vast != '' && !telefoon_check($vast))
 				   				  				echo('<b>* Er is geen geldig vast nummer ingevoerd!</b>');
@@ -212,7 +212,7 @@
 													if ($vast == '' || !telefoon_check($vast))
 				   				  				echo('<b>* Er is geen geldig vast nummer ingevoerd!</b>');
 												}
-			    				  	}
+			    				  	}*/
 			    				  ?>
 			    				</td>
 				    		</tr>
@@ -224,7 +224,7 @@
 			    				  		$mobiel = $_POST['Contact_Telefoon_Mobiel'];
 			    				  	else $mobiel = '';
 	
-			    				  	if(isset($_POST['opslaan'])) {
+			    				/*  	if(isset($_POST['opslaan'])) {
 												if(isset($_POST['parent_gegevens'])) {
 													if ($mobiel != '' && !telefoon_check($mobiel))
 				   				  				echo('<b>* Er is geen geldig mobiel nummer ingevoerd!</b>');
@@ -233,7 +233,7 @@
 													if ($mobiel == '' || !telefoon_check($mobiel))
 				   				  				echo('<b>* Er is geen geldig mobiel nummer ingevoerd!</b>');
 												}
-			    				  	}
+			    				  	}*/
 			    				  ?>
 			    				</td>
 				    		</tr>
@@ -245,10 +245,10 @@
 			    				  		$fax = $_POST['Contact_Telefoon_Fax'];
 			    				  	else $fax = '';
 	
-			    				  	if(isset($_POST['opslaan'])) {
+			    				 /* 	if(isset($_POST['opslaan'])) {
 												if ($fax != '' && !telefoon_check($fax))
 			   				  				echo('<b>* Er is geen geldig fax nummer ingevoerd!</b>');
-			    				  	}
+			    				  	}*/
 			   						?>
 			   					</td>
 				    		</tr>
diff --git a/support/tool/CRAFT/algemene_functionaliteit/comp_bewerken.php b/support/tool/CRAFT/algemene_functionaliteit/comp_bewerken.php
index 9f6c517958a..8f7a9ee4b42 100644
--- a/support/tool/CRAFT/algemene_functionaliteit/comp_bewerken.php
+++ b/support/tool/CRAFT/algemene_functionaliteit/comp_bewerken.php
@@ -53,6 +53,35 @@
 		
 		return true;
 	}
+	
+	function Melding_Velden_Controle() {
+		//extra velden controle!!!
+		$aantal_velden = $_POST['meld_aantal'];
+		
+		for($i = 0; $i < $aantal_velden; $i++) {
+
+			//verplichte velden ingevuld??
+			if ($_POST['m_v' . $i] == '1') {
+				//bestanden
+				if ($_POST['m_t' . $i] == '5') {
+					if ($_SESSION['m_bestand' . $i] == '-1') return false;
+				}
+				//overige
+				else {
+					if ($_POST['m_' . $i] == '') return false;
+				}
+			}
+			//datum controle bij datum velden
+			if ($_POST['m_t' . $i] == '4a') {
+				if (Valideer_Datum($_POST['m_' . $i]) == false) return false;
+			}
+			//tijd controle bij datum velden
+			if ($_POST['m_t' . $i] == '4b') {
+				if (Valideer_Tijd($_POST['m_' . $i]) == false) return false;
+			}
+		}
+		return true;
+	}
 
 	
 	function Child_Controle() {
@@ -194,7 +223,8 @@
 			}
 		}
 		
-		return Extra_Velden_Controle();
+		if (Extra_Velden_Controle() == false)   return false;
+		if (Melding_Velden_Controle() == false) return false;
 
 		return true;
 	}
@@ -322,6 +352,49 @@
 					}
 				}
 			}
+			
+			//extra velden van de melding toevoegen
+			$aantal_velden = $_POST['meld_aantal'];
+			
+			$error_extra = 0;
+			for($i = 0; $i < $_POST['meld_aantal']; $i++) {
+ 				//DataTabel entry maken
+  			//integer
+  			if ($_POST['m_t' . $i] == '1') 		   $query = "INSERT INTO datatabel (Type_Integer) VALUES('".$_POST['m_' . $i]."')";
+  			//double
+  			else if ($_POST['m_t' . $i] == '2')  $query = "INSERT INTO datatabel (Type_Double) VALUES('".$_POST['m_' . $i]."')"; 
+  			//text
+  			else if ($_POST['m_t' . $i] == '3')  $query = "INSERT INTO datatabel (Type_Text) VALUES('".$_POST['m_' . $i]."')"; 
+  			//datumtijd
+  			else if ($_POST['m_t' . $i] == '4b') $query = "INSERT INTO datatabel (Type_DateTime) VALUES('". Datum_Tijd_Naar_DB_Conversie($_POST['m_' . $i -1],$_POST['m_' . $i]) ."')"; 
+  			//bestandsverwijzing
+  			else if ($_POST['m_t' . $i] == '5')  $query = "INSERT INTO datatabel (Type_TinyText) VALUES('".$_SESSION['m_bestand' . $i]."')"; 
+  			else $query = "";
+
+				//uitvoeren van de datatabel record
+				if (($_POST['m_t' . $i] != '4a') && mysql_query($query)) {
+	 				$error_extra = 1;
+
+  				$Veld_ID = mysql_insert_id();
+  				
+  				if ($_POST['m_t'.$i] == '4b') $datatype = 4;
+  				else $datatype = $_POST['m_t'.$i];
+  				
+  				$query = "INSERT INTO extra_velden (Data_Kolom_ID, Veld_Naam, Aangemaakt_Door, DataType, Type_Beschrijving, Tabel_Type, Is_Verplicht)";
+  				$query = $query . "VALUES ('".$Veld_ID."', '".$_POST['m_n'.$i]."', '".$_SESSION['gebr_id'] ."', '".$datatype."', '". $_POST['m_i'.$i] ."', '3', '".$_POST['m_v'.$i]."')";
+
+    			if (mysql_query($query)) {
+		 				$error_extra = 2;
+
+    				$Veld_ID = mysql_insert_id();	  				
+  					$query = "INSERT INTO melding_koppel_extra (Kolom_ID, Meld_Lijst_ID) VALUES('".$Veld_ID. "', '". $melding_id ."')";
+
+	    			if (mysql_query($query)) {
+			 				$error_extra = 3;
+		  			}
+    			}
+				}
+			}
 		}
 		
 		if ($errorlevel == 2) echo("Het gewijzigde component \"". $_POST['comp_naam'] ."\" is (inclusief extra velden)in het systeem bijgewerkt<br>");
@@ -372,19 +445,19 @@
 
   			<tr>
   				<td>Reden bewerking:</td>
-  				<td><select name="type_melding" onchange="switchMelding();">
+  				<td><select name="type_melding" onchange="document.theForm.submit();">
   					<?php
   						$query = "SELECT Meld_Type_ID, Melding_Type_Naam FROM melding_type";
 	    			  $resultaat = mysql_query($query);
 
-				  		if (isset($_POST['type_melding'])) $selectie = $_POST['type_melding'];
-				  		else $selectie = 'SELECTED';
+				  		if (isset($_POST['type_melding'])) $meld_selectie = $_POST['type_melding'];
+				  		else $meld_selectie = 'SELECTED';
 
 					  	while ($data = mysql_fetch_array($resultaat)) {
 	  	  				echo('<option value="'.$data['Meld_Type_ID'].'"');
-		  	  			if ($data['Meld_Type_ID'] == $selectie || $selectie == 'SELECTED') {
+		  	  			if ($data['Meld_Type_ID'] == $meld_selectie || $meld_selectie == 'SELECTED') {
 		  	  				echo('SELECTED');
-		  	  				$selectie = $data['Meld_Type_ID'];
+		  	  				$meld_selectie = $data['Meld_Type_ID'];
 		  	  			}
 		  	  			echo('>'. $data['Melding_Type_Naam'] .'</option>');
 							}
@@ -408,7 +481,7 @@
   			</tr>
 				<tr>
 					<td>Beschrijving:</td>
-					<td><iframe id="frame_melding" name="frame_melding" align="middle" marginwidth="0" marginheight="0" src="<?php echo($_SESSION['pagina']); ?>algemene_functionaliteit/comp_toevoegen_melding.php?c=<?php echo($selectie); if(isset($_POST['hidden_naam'])){ echo("&n=".$_POST['hidden_naam']); } ?>" width="450" height="72" ALLOWTRANSPARENCY frameborder="0" scrolling="auto"></iframe>
+					<td><iframe id="frame_melding" name="frame_melding" align="middle" marginwidth="0" marginheight="0" src="<?php echo($_SESSION['pagina']); ?>algemene_functionaliteit/comp_toevoegen_melding.php?c=<?php echo($meld_selectie); if(isset($_POST['hidden_naam'])){ echo("&n=".$_POST['hidden_naam']); } ?>" width="580" height="72" ALLOWTRANSPARENCY frameborder="0" scrolling="auto"></iframe>
 					</td>
 				</tr>
 				<tr>
@@ -576,6 +649,48 @@
 								echo("<input type=\"hidden\" name=\"an". $i ."\" id=\"an". $i ."\" value=\"\">\n");
 							}
 							
+							//extra velden (welke bij de melding horen) bepalen
+		 					//eerst bepalen hoeveel velden er zijn, ivm met het datumveld dat uit 2 input boxen bestaat
+							$query = "SELECT Kolom_ID FROM type_melding_koppel_extra WHERE Meld_Type_ID = '". $meld_selectie ."'";
+							$resultaat = mysql_query($query);
+							$meld_aantal = 0;
+							$meld_bestand = 0;
+							while ($data = mysql_fetch_row($resultaat)) {
+								$query = "SELECT * FROM extra_velden WHERE Kolom_ID = '". $data[0]  ."'";
+								$result = mysql_query($query);
+								$meld_velden = mysql_fetch_array($result);
+								//4 = datumtijd
+								if ($meld_velden['DataType'] == 4)
+									$meld_aantal++;
+								if ($meld_velden['DataType'] == 5)
+									$meld_bestand++;
+								
+								$meld_aantal++;
+							}
+ 							//het aantal onthouden zodat er nadat er gepost is, gemakkelijk door de velden geitereerd kunnen worden
+ 							echo("<input id=\"meld_aantal\" name=\"meld_aantal\" type=\"hidden\" value=\"".$meld_aantal."\">\n");
+ 							//het aantal bestandsvelden onthouden zodat er nadat er gepost is, gemakkelijk door de velden geitereerd kunnen worden
+ 							echo("<input id=\"meld_bestand\" name=\"meld_bestand\" type=\"hidden\" value=\"".$meld_bestand."\">\n");
+							
+  						//5 hidden velden aanmaken voor elk extra veld: 1 voor de waarde, 1 voor het type en 1 voor de verplichtheid en 1 voor de ID van de parent record en 1 voor de veldnaam
+							for($i = 0; $i < $meld_aantal; $i++){
+	  						echo("<input id=\"m_".$i."\" name=\"m_".$i."\" type=\"hidden\" value=\"");
+	  						if (isset($_POST["m_".$i])) echo($_POST["m_".$i]);
+	  						echo("\">");
+  							echo("<input id=\"m_t".$i."\" name=\"m_t".$i."\" type=\"hidden\" value=\"");
+	  						if (isset($_POST['m_t'.$i])) echo($_POST['m_t'.$i]);
+	  						echo("\">");
+  							echo("<input id=\"m_v".$i."\" name=\"m_v".$i."\" type=\"hidden\" value=\"");
+	  						if (isset($_POST['m_v'.$i])) echo($_POST['m_v'.$i]);
+	  						echo("\">");
+  							echo("<input id=\"m_i".$i."\" name=\"m_i".$i."\" type=\"hidden\" value=\"");
+	  						if (isset($_POST['m_i'.$i])) echo($_POST['m_i'.$i]);
+	  						echo("\">");
+  							echo("<input id=\"m_n".$i."\" name=\"m_n".$i."\" type=\"hidden\" value=\"");
+	  						if (isset($_POST['m_n'.$i])) echo($_POST['m_n'.$i]);
+	  						echo("\">\n");
+							}
+							
 					 ?>
   					<input id="hidden_parent" name="hidden_parent" type="hidden" value="">
   					<input id="hidden_melding" name="hidden_melding" type="hidden" value="">
diff --git a/support/tool/CRAFT/algemene_functionaliteit/comp_toevoegen.php b/support/tool/CRAFT/algemene_functionaliteit/comp_toevoegen.php
index a7f2024d037..cbd6a67adcf 100644
--- a/support/tool/CRAFT/algemene_functionaliteit/comp_toevoegen.php
+++ b/support/tool/CRAFT/algemene_functionaliteit/comp_toevoegen.php
@@ -29,6 +29,36 @@
 				return true;
 			}
 
+			function Melding_Velden_Controle() {
+				//extra velden controle!!!
+				$aantal_velden = $_POST['meld_aantal'];
+				
+				for($i = 0; $i < $aantal_velden; $i++) {
+
+					//verplichte velden ingevuld??
+					if ($_POST['m_v' . $i] == '1') {
+						//bestanden
+						if ($_POST['m_t' . $i] == '5') {
+							if ($_SESSION['m_bestand' . $i] == '-1') return false;
+						}
+						//overige
+						else {
+							if ($_POST['m_' . $i] == '') return false;
+						}
+					}
+					//datum controle bij datum velden
+					if ($_POST['m_t' . $i] == '4a') {
+						if (Valideer_Datum($_POST['m_' . $i]) == false) return false;
+					}
+					//tijd controle bij datum velden
+					if ($_POST['m_t' . $i] == '4b') {
+						if (Valideer_Tijd($_POST['m_' . $i]) == false) return false;
+					}
+				}
+				return true;
+			}
+
+
 
 			//het valideren van de invoer, dus controleren of de ingevoerde gegevens opgeslagen mogen worden
 			function Valideer_Invoer() {
@@ -133,7 +163,8 @@
 						}
  					}
  				}
- 				return Extra_Velden_Controle();
+ 				if (Extra_Velden_Controle() == false)   return false;
+ 				if (Melding_Velden_Controle() == false) return false;
 
 				//alle controles zijn goed doorlopen
 				return true;
@@ -249,6 +280,48 @@
 				    				$Veld_ID = mysql_insert_id();	  				
 		  	  					$query = "INSERT INTO comp_koppel_extra (Kolom_ID, Comp_Lijst_ID) VALUES('".$Veld_ID. "', '". $Comp_ID ."')";
 
+					    			if (mysql_query($query)) {
+							 				$error_extra = 3;
+			  		  			}
+				    			}
+								}
+							}
+			 				//extra velden van de melding toevoegen
+			 				$aantal_velden = $_POST['meld_aantal'];
+			 				
+			 				$error_extra = 0;
+			 				for($i = 0; $i < $_POST['meld_aantal']; $i++) {
+				 				//DataTabel entry maken
+			    			//integer
+			    			if ($_POST['m_t' . $i] == '1') 		   $query = "INSERT INTO datatabel (Type_Integer) VALUES('".$_POST['m_' . $i]."')";
+			    			//double
+			    			else if ($_POST['m_t' . $i] == '2')  $query = "INSERT INTO datatabel (Type_Double) VALUES('".$_POST['m_' . $i]."')"; 
+			    			//text
+			    			else if ($_POST['m_t' . $i] == '3')  $query = "INSERT INTO datatabel (Type_Text) VALUES('".$_POST['m_' . $i]."')"; 
+			    			//datumtijd
+			    			else if ($_POST['m_t' . $i] == '4b') $query = "INSERT INTO datatabel (Type_DateTime) VALUES('". Datum_Tijd_Naar_DB_Conversie($_POST['m_' . $i -1],$_POST['m_' . $i]) ."')"; 
+			    			//bestandsverwijzing
+			    			else if ($_POST['m_t' . $i] == '5')  $query = "INSERT INTO datatabel (Type_TinyText) VALUES('".$_SESSION['m_bestand' . $i]."')"; 
+			    			else $query = "";
+
+								//uitvoeren van de datatabel record
+								if (($_POST['m_t' . $i] != '4a') && mysql_query($query)) {
+					 				$error_extra = 1;
+
+			    				$Veld_ID = mysql_insert_id();
+			    				
+			    				if ($_POST['m_t'.$i] == '4b') $datatype = 4;
+			    				else $datatype = $_POST['m_t'.$i];
+			    				
+			    				$query = "INSERT INTO extra_velden (Data_Kolom_ID, Veld_Naam, Aangemaakt_Door, DataType, Type_Beschrijving, Tabel_Type, Is_Verplicht)";
+			    				$query = $query . "VALUES ('".$Veld_ID."', '".$_POST['m_n'.$i]."', '".$_SESSION['gebr_id'] ."', '".$datatype."', '". $_POST['m_i'.$i] ."', '3', '".$_POST['m_v'.$i]."')";
+
+				    			if (mysql_query($query)) {
+						 				$error_extra = 2;
+
+				    				$Veld_ID = mysql_insert_id();	  				
+		  	  					$query = "INSERT INTO melding_koppel_extra (Kolom_ID, Meld_Lijst_ID) VALUES('".$Veld_ID. "', '". $Meld_ID ."')";
+
 					    			if (mysql_query($query)) {
 							 				$error_extra = 3;
 			  		  			}
@@ -332,20 +405,22 @@
   				<td><iframe id="frame_parent" name="frame_parent" align="middle" marginwidth="0" marginheight="0" src="<?php echo($_SESSION['pagina']); ?>algemene_functionaliteit/comp_toevoegen_parent.php?c=<?php echo($selected . $selectie); ?>" width="550" height="<?php echo($hoogte); ?>" ALLOWTRANSPARENCY frameborder="0" scrolling="auto"></iframe></td>
   			</tr>
   			<tr>
-  				<td>Type melding:</td>
-  				<td><select name="type_melding" onchange="switchMelding();">
+  				<td>Type melding:</td> 
+  				<td><select name="type_melding" onchange="PostDocument('<?php echo($_SESSION['huidige_pagina']); ?>');">
   					<?php
+  					
+  							//onchange="switchMelding();"
   						$query = "SELECT Meld_Type_ID, Melding_Type_Naam FROM melding_type";
 	    			  $resultaat = mysql_query($query);
 
-				  		if (isset($_POST['type_melding'])) $selectie = $_POST['type_melding'];
-				  		else $selectie = 'SELECTED';
+				  		if (isset($_POST['type_melding'])) $meld_selectie = $_POST['type_melding'];
+				  		else $meld_selectie = 'SELECTED';
 
 					  	while ($data = mysql_fetch_array($resultaat)) {
 	  	  				echo('<option value="'.$data['Meld_Type_ID'].'"');
-		  	  			if ($data['Meld_Type_ID'] == $selectie || $selectie == 'SELECTED') {
+		  	  			if ($data['Meld_Type_ID'] == $meld_selectie || $meld_selectie == 'SELECTED') {
 		  	  				echo('SELECTED');
-		  	  				$selectie = $data['Meld_Type_ID'];
+		  	  				$meld_selectie = $data['Meld_Type_ID'];
 		  	  			}
 		  	  			echo('>'. $data['Melding_Type_Naam'] .'</option>');
 							}
@@ -356,8 +431,8 @@
 					</td>
   			</tr>
 				<tr>
-					<td>Melding beschrijving:</td>
-					<td><iframe id="frame_melding" name="frame_melding" align="middle" marginwidth="0" marginheight="0" src="<?php echo($_SESSION['pagina']); ?>algemene_functionaliteit/comp_toevoegen_melding.php?c=<?php echo($selectie); if(isset($_POST['hidden_naam'])){ echo("&n=".$_POST['hidden_naam']); } ?>" width="450" height="72" ALLOWTRANSPARENCY frameborder="0" scrolling="auto"></iframe>
+					<td>Melding beschrijving:</td>					
+					<td><iframe id="frame_melding" name="frame_melding" align="middle" marginwidth="0" marginheight="0" src="<?php echo($_SESSION['pagina']); ?>algemene_functionaliteit/comp_toevoegen_melding.php?c=<?php echo($meld_selectie); if(isset($_POST['hidden_naam'])){ echo("&n=".$_POST['hidden_naam']); } ?>" width="580" height="72" ALLOWTRANSPARENCY frameborder="0" scrolling="auto"></iframe>as
 					</td>
 				</tr>
   			<tr>
@@ -455,7 +530,7 @@
 				<tr>
 					<td>
   					<?php
-		 				
+
 		 					//eerst bepalen hoeveel velden er zijn, ivm met het datumveld dat uit 2 input boxen bestaat
 							$query = "SELECT Kolom_ID FROM type_comp_koppel_extra WHERE Comp_Type_ID = '". $selected ."'";
 							$resultaat = mysql_query($query);
@@ -497,6 +572,48 @@
 	  						echo("\">\n");
 							}
 							
+							//extra velden (welke bij de melding horen) bepalen
+		 					//eerst bepalen hoeveel velden er zijn, ivm met het datumveld dat uit 2 input boxen bestaat
+							$query = "SELECT Kolom_ID FROM type_melding_koppel_extra WHERE Meld_Type_ID = '". $meld_selectie ."'";
+							$resultaat = mysql_query($query);
+							$meld_aantal = 0;
+							$meld_bestand = 0;
+							while ($data = mysql_fetch_row($resultaat)) {
+								$query = "SELECT * FROM extra_velden WHERE Kolom_ID = '". $data[0]  ."'";
+								$result = mysql_query($query);
+								$meld_velden = mysql_fetch_array($result);
+								//4 = datumtijd
+								if ($meld_velden['DataType'] == 4)
+									$meld_aantal++;
+								if ($meld_velden['DataType'] == 5)
+									$meld_bestand++;
+								
+								$meld_aantal++;
+							}
+ 							//het aantal onthouden zodat er nadat er gepost is, gemakkelijk door de velden geitereerd kunnen worden
+ 							echo("<input id=\"meld_aantal\" name=\"meld_aantal\" type=\"hidden\" value=\"".$meld_aantal."\">\n");
+ 							//het aantal bestandsvelden onthouden zodat er nadat er gepost is, gemakkelijk door de velden geitereerd kunnen worden
+ 							echo("<input id=\"meld_bestand\" name=\"meld_bestand\" type=\"hidden\" value=\"".$meld_bestand."\">\n");
+							
+  						//5 hidden velden aanmaken voor elk extra veld: 1 voor de waarde, 1 voor het type en 1 voor de verplichtheid en 1 voor de ID van de parent record en 1 voor de veldnaam
+							for($i = 0; $i < $meld_aantal; $i++){
+	  						echo("<input id=\"m_".$i."\" name=\"m_".$i."\" type=\"hidden\" value=\"");
+	  						if (isset($_POST["m_".$i])) echo($_POST["m_".$i]);
+	  						echo("\">");
+  							echo("<input id=\"m_t".$i."\" name=\"m_t".$i."\" type=\"hidden\" value=\"");
+	  						if (isset($_POST['m_t'.$i])) echo($_POST['m_t'.$i]);
+	  						echo("\">");
+  							echo("<input id=\"m_v".$i."\" name=\"m_v".$i."\" type=\"hidden\" value=\"");
+	  						if (isset($_POST['m_v'.$i])) echo($_POST['m_v'.$i]);
+	  						echo("\">");
+  							echo("<input id=\"m_i".$i."\" name=\"m_i".$i."\" type=\"hidden\" value=\"");
+	  						if (isset($_POST['m_i'.$i])) echo($_POST['m_i'.$i]);
+	  						echo("\">");
+  							echo("<input id=\"m_n".$i."\" name=\"m_n".$i."\" type=\"hidden\" value=\"");
+	  						if (isset($_POST['m_n'.$i])) echo($_POST['m_n'.$i]);
+	  						echo("\">\n");
+							}
+							
 					 ?>
   					<input id="opslaan" name="opslaan" type="hidden" value="1">
   					<input id="hidden_fabricagedatum" name="hidden_fabricagedatum" type="hidden" value="<?php echo($fabricagedatum); ?>">
diff --git a/support/tool/CRAFT/algemene_functionaliteit/comp_toevoegen_functies.php b/support/tool/CRAFT/algemene_functionaliteit/comp_toevoegen_functies.php
index aa449e09682..bf3a2dd17d2 100644
--- a/support/tool/CRAFT/algemene_functionaliteit/comp_toevoegen_functies.php
+++ b/support/tool/CRAFT/algemene_functionaliteit/comp_toevoegen_functies.php
@@ -67,6 +67,26 @@ function SubmitComponentBewerken()
 		document.getElementById('ai' + i).value = id;
 		document.getElementById('an' + i).value = naam;
 	}
+	
+	var aantal = document.frames['frame_melding'].document.getElementById('aantal').value;
+	
+	for(i=0; i < aantal; i++) {
+		var type = document.frames['frame_melding'].document.getElementById('t'+i).value;
+		var verplicht = document.frames['frame_melding'].document.getElementById('v'+i).value;
+		var id = document.frames['frame_melding'].document.getElementById('i'+i).value;
+		var naam = document.frames['frame_melding'].document.getElementById('n'+i).value;
+
+		if(type != 5) {
+			var waarde = document.frames['frame_melding'].document.getElementById(i).value;
+			document.getElementById('m_' + i).value = waarde;
+		}
+
+		document.getElementById('m_t' + i).value = type;
+		document.getElementById('m_v' + i).value = verplicht;
+		document.getElementById('m_i' + i).value = id;
+		document.getElementById('m_n' + i).value = naam;
+	}
+
 
 	var s = document.frames['frame_melding'].document.getElementById('sStatus').value;
 	var m = document.frames['frame_melding'].document.getElementById('sMelding').value;
@@ -88,6 +108,9 @@ function PostDocument(url) {
 	document.theForm.submit();
 }
 
+function PostBewerkenDocument(url) {
+	document.theForm.submit();
+}
 
 function submitComponentToevoegen() 
 {
@@ -109,6 +132,27 @@ function submitComponentToevoegen()
 		document.getElementById('i' + i).value = id;
 		document.getElementById('n' + i).value = naam;
 	}
+
+
+	var aantal = document.frames['frame_melding'].document.getElementById('aantal').value;
+	
+	for(i=0; i < aantal; i++) {
+		var type = document.frames['frame_melding'].document.getElementById('t'+i).value;
+		var verplicht = document.frames['frame_melding'].document.getElementById('v'+i).value;
+		var id = document.frames['frame_melding'].document.getElementById('i'+i).value;
+		var naam = document.frames['frame_melding'].document.getElementById('n'+i).value;
+
+		if(type != 5) {
+			var waarde = document.frames['frame_melding'].document.getElementById(i).value;
+			document.getElementById('m_' + i).value = waarde;
+		}
+
+		document.getElementById('m_t' + i).value = type;
+		document.getElementById('m_v' + i).value = verplicht;
+		document.getElementById('m_i' + i).value = id;
+		document.getElementById('m_n' + i).value = naam;
+	}
+
 	
 	var n = document.frames['frame_contact'].document.getElementById('sVerantwoordelijke').value;
 	var s = document.frames['frame_melding'].document.getElementById('sStatus').value;
diff --git a/support/tool/CRAFT/algemene_functionaliteit/comp_toevoegen_melding.php b/support/tool/CRAFT/algemene_functionaliteit/comp_toevoegen_melding.php
index 9c21cf9e637..ec63e9ce494 100644
--- a/support/tool/CRAFT/algemene_functionaliteit/comp_toevoegen_melding.php
+++ b/support/tool/CRAFT/algemene_functionaliteit/comp_toevoegen_melding.php
@@ -8,8 +8,118 @@
 				$query = "SELECT Stand_Beschrijving, Huidige_Status FROM melding_type WHERE Meld_Type_ID = '". $_GET['c'] ."'";
 				$resultaat = mysql_query($query);
 				$data = mysql_fetch_array($resultaat);
-				echo ("<textarea id=\"sMelding\" name=\"sMelding\" rows=\"4\" cols=\"35\">" .$data[0]."</textarea>");
+				$query = "SELECT * FROM type_melding_koppel_extra WHERE Meld_Type_ID = '".$_GET['c']."'";
+				$num_rows = mysql_num_rows(mysql_query($query));
+
+				echo ("<table CELLSPACING=\"0\" CELLPADDING=\"0\" border=\"0\"><tr><td>");
+				echo ("<textarea id=\"sMelding\" name=\"sMelding\" rows=\"4\" cols=\"");
+				if ($num_rows == 0)
+					echo("35");
+				else ("25");
+				echo("\">" .$data[0]."</textarea>");
 				echo ("<input id=\"sStatus\" name=\"sStatus\" type=\"hidden\" value=\"". $data[1] ."\">");
+				
+				//controleren of er extra velden aan te maken zijn bij dit type melding
+				//meer dan 0?? dan zijn er extra velden bij dit type
+				if($num_rows > 0) {
+					$resultaat = mysql_query($query);
+					echo("</td><td>&nbsp&nbsp</td><td STYLE=\"vertical-align: top;\"><table CELLSPACING=\"0\" CELLPADDING=\"0\" border=\"0\">");
+					$aantal_velden = 0;
+					
+			  	while ($data = mysql_fetch_array($resultaat)) {
+			  		$query = "SELECT * FROM extra_velden WHERE Kolom_ID = '".$data['Kolom_ID']."'";
+						$res = mysql_query($query);
+						$row = mysql_fetch_array($res);
+						echo("<tr><td>".$row['Veld_Naam']);
+						if ($row['Is_verplicht'] == 1)
+							echo("*");
+						echo("</td><td>&nbsp&nbsp"); 
+
+						//standaard waardes ophalen
+	 					$query = "SELECT * FROM datatabel WHERE Data_Kolom_ID = '". $row['Data_Kolom_ID']  ."'"; 					
+	 					$res = mysql_query($query);
+						$uitkomst = mysql_fetch_array($res);
+						$waarde1 = "";
+						$waarde2 = "";
+	
+						if($row['DataType'] == 1) $waarde1 = $uitkomst['Type_Integer'];
+						else if($row['DataType'] == 2) $waarde1 = $uitkomst['Type_Double'];
+						else if($row['DataType'] == 3) $waarde1 = $uitkomst['Type_Text'];
+						else if($row['DataType'] == 4) {
+	  					$gedeeldveld=split(" ",$uitkomst['Type_DateTime']);
+							//datum veld opdelen zodat de jaar, maand en dagvelden makkelijk te benaderen zijn
+							$datum = split("-",$gedeeldveld[0]);
+							//tijd veld opdelen zodat de uren, minuten en secondevelden makkelijk te benaderen zijn
+							$tijd = split(":",$gedeeldveld[1]);
+	
+							$waarde1 = $datum[2] ."-". $datum[1] ."-". $datum[0];
+							$waarde2 = $tijd[0] .":". $tijd[1];
+						}
+						else if($row['DataType'] == 5) $waarde1 = $uitkomst['Type_TinyText'];
+	
+	    			//1 = integer, 2 = double, 3 = text, 4 = datumtijd, 5 = bestandsverwijzing
+						if ($row['DataType'] == 3) {
+							echo("<td><textarea name=\"".$aantal_velden."\" id=\"".$aantal_velden."\" rows=\"3\" cols=\"25\">".$waarde1."</textarea>");
+							echo("<input type=\"hidden\" name=\"t". $aantal_velden ."\" id=\"t". $aantal_velden ."\" value=\"". $row['DataType'] ."\">");
+							echo("<input type=\"hidden\" name=\"v". $aantal_velden ."\" id=\"v". $aantal_velden ."\" value=\"". $row['Is_verplicht'] ."\">");
+							echo("<input type=\"hidden\" name=\"i". $aantal_velden ."\" id=\"i". $aantal_velden ."\" value=\"". $row['Kolom_ID'] ."\">");
+							echo("<input type=\"hidden\" name=\"n". $aantal_velden ."\" id=\"n". $aantal_velden ."\" value=\"". $row['Veld_Naam'] ."\">");
+							echo("</td>");
+						}
+						else if ($row['DataType'] == 4) {
+							echo("<td><input name=\"".$aantal_velden."\" id=\"".$aantal_velden."\" type=\"text\" size=\"8\" maxlength=\"10\" value=\"".$waarde1."\"><input name=\"".($aantal_velden +1)."\" id=\"".($aantal_velden +1)."\" type=\"text\" size=\"2\" maxlength=\"5\" value=\"".$waarde2."\">");
+							echo("<input type=\"hidden\" name=\"t". $aantal_velden ."\" id=\"t". $aantal_velden ."\" value=\"". $row['DataType'] ."a\">");
+							echo("<input type=\"hidden\" name=\"t". ($aantal_velden +1) ."\" id=\"t". ($aantal_velden +1) ."\" value=\"". $row['DataType'] ."b\">");
+							echo("<input type=\"hidden\" name=\"v". $aantal_velden ."\" id=\"v". $aantal_velden ."\" value=\"". $row['Is_verplicht'] ."\">");
+							echo("<input type=\"hidden\" name=\"v". ($aantal_velden +1) ."\" id=\"v". ($aantal_velden +1) ."\" value=\"". $row['Is_verplicht'] ."\">");
+							echo("<input type=\"hidden\" name=\"i". $aantal_velden ."\" id=\"i". $aantal_velden ."\" value=\"". $row['Kolom_ID'] ."\">");
+							echo("<input type=\"hidden\" name=\"i". ($aantal_velden +1) ."\" id=\"i". ($aantal_velden +1) ."\" value=\"". $row['Kolom_ID'] ."\">");
+							echo("<input type=\"hidden\" name=\"n". $aantal_velden ."\" id=\"n". $aantal_velden ."\" value=\"". $row['Veld_Naam'] ."\">");
+							echo("<input type=\"hidden\" name=\"n". ($aantal_velden +1) ."\" id=\"n". ($aantal_velden +1) ."\" value=\"". $row['Veld_Naam'] ."\">");
+							echo("</td>");
+							$aantal_velden++;
+						}
+						else if($row['DataType'] == 5){
+							echo("<td>");
+							if($waarde1 == -1) {
+								echo("<a href=\"bestand_uploaden.php?c=".$aantal_velden."\" target=\"_blank\">Upload een bestand</a>");
+								echo("<input type=\"hidden\" name=\"t". $aantal_velden ."\" id=\"t". $aantal_velden ."\" value=\"". $row['DataType'] ."\">");
+								echo("<input type=\"hidden\" name=\"v". $aantal_velden ."\" id=\"v". $aantal_velden ."\" value=\"". $row['Is_verplicht'] ."\">");
+								echo("<input type=\"hidden\" name=\"i". $aantal_velden ."\" id=\"i". $aantal_velden ."\" value=\"". $row['Kolom_ID'] ."\">");
+								echo("<input type=\"hidden\" name=\"n". $aantal_velden ."\" id=\"n". $aantal_velden ."\" value=\"". $row['Veld_Naam'] ."\">");
+							}
+							else {
+								echo("<a href=\"".$waarde1."\" target=\"_blank\">Openen</a>");
+								echo("<input type=\"hidden\" name=\"t". $aantal_velden ."\" id=\"t". $aantal_velden ."\" value=\"". $row['DataType'] ."\">");
+								echo("<input type=\"hidden\" name=\"v". $aantal_velden ."\" id=\"v". $aantal_velden ."\" value=\"". $row['Is_verplicht'] ."\">");
+								echo("<input type=\"hidden\" name=\"i". $aantal_velden ."\" id=\"i". $aantal_velden ."\" value=\"". $row['Kolom_ID'] ."\">");
+								echo("<input type=\"hidden\" name=\"n". $aantal_velden ."\" id=\"n". $aantal_velden ."\" value=\"". $row['Veld_Naam'] ."\">");
+							}
+							$_SESSION['m_bestand' . $aantal_velden] = $waarde1;
+							echo("</td>");
+						}
+						else {
+							echo("<td><input name=\"".$aantal_velden."\" id=\"".$aantal_velden."\" type=\"text\" value=\"".$waarde1."\">"); 
+							echo("<input type=\"hidden\" name=\"t". $aantal_velden ."\" id=\"t". $aantal_velden ."\" value=\"". $row['DataType'] ."\">");
+							echo("<input type=\"hidden\" name=\"v". $aantal_velden ."\" id=\"v". $aantal_velden ."\" value=\"". $row['Is_verplicht'] ."\">");
+							echo("<input type=\"hidden\" name=\"i". $aantal_velden ."\" id=\"i". $aantal_velden ."\" value=\"". $row['Kolom_ID'] ."\">");
+							echo("<input type=\"hidden\" name=\"n". $aantal_velden ."\" id=\"n". $aantal_velden ."\" value=\"". $row['Veld_Naam'] ."\">");
+							echo("</td>");
+						}
+						$aantal_velden++;
+
+
+						echo("</tr>");
+			  		//dingen weergeven
+			  		//Kolom_ID
+			  		//dsf
+					}
+					echo("</table>");
+					echo("<input type=\"hidden\" name=\"aantal\" id=\"aantal\" value=\"". $aantal_velden ."\">\n");
+					
+				}
+				echo ("</td></tr></table>");
+
 			}
 		?>
 	</body>
diff --git a/support/tool/CRAFT/algemene_functionaliteit/melding_bewerken.php b/support/tool/CRAFT/algemene_functionaliteit/melding_bewerken.php
index d1ebc72a66a..231b875c585 100644
--- a/support/tool/CRAFT/algemene_functionaliteit/melding_bewerken.php
+++ b/support/tool/CRAFT/algemene_functionaliteit/melding_bewerken.php
@@ -33,8 +33,8 @@
 			//verplichte velden ingevuld??
 			if ($_POST['av' . $i] == '1') {
 				//bestanden
-				if ($_POST['t' . $i] == '5') {
-					if ($_SESSION['bestand' . $i] == '-1') return false;
+				if ($_POST['at' . $i] == '5') {
+					if ($_SESSION['abestand' . $i] == '-1') return false;
 				}
 				//overige
 				else {
-- 
GitLab