<commit_before><?php
namespace Application\Controller;


use Zend\Mvc\Controller\AbstractActionController;
use Zend\View\Model\ViewModel;
use Application\Model\Gruppe;
use Application\Model\User;
use Application\Model\Gruppenmitglied;
use Application\Model\Kategorie;
use Application\Model\Zahlung;
use Application\Model\Zahlungsteilnehmer;


class ZahlunganlegenController extends AbstractActionController {

	function zahlunganlegenAction() {
		// TODO Berechtigungspr�fung
		session_start();
		  

		

		$errors = array();

		if($_SESSION['angemeldet'] != 'ja') {

			array_push($errors, "Sie müssen angemeldet sein um eine Zahlung zu erstellen!");

			$view = new ViewModel(array(
					$errors
			));
			$view->setTemplate('application/index/index.phtml');
			return $view;

		} else {
			
			
			
			//Liste alle verf�gbaren Kateforien holen
			$kategorieliste = Kategorie::listeHolen();

			// Liste der User-Objekte der Gruppenmitglieder holen
			$gruppe = new Gruppe();
			$gruppe->laden($_GET['g_id']);
			
			$mitgliederliste = User::gruppenmitgliederlisteholen($gruppe->getG_id());
			
			// HEutigers Datum als erstellungsdatum
			date_default_timezone_set("Europe/Berlin");
			$timestamp=time();
			$erstellungsdatum= date('Y-m-d', $timestamp);
			
			$zahlung = new Zahlung();
				

			$saved= false;
			$msg = array();

			if ($_REQUEST['speichern']) {

					
				// Schritt 1:  Werte aus Formular einlesen
				$z_id=$_REQUEST["z_id"];
				$zahlungsbeschreibung=$_REQUEST["zahlungsbeschreibung"];
				$zahlungsdatum=$_REQUEST["zahlungsdatum"];
				$betrag=$_REQUEST["betrag"];
				$k_id=$_REQUEST["k_id"];
				
				//date_default_timezone_set("Europe/Berlin");
				//$timestamp=time();
				//$erstellungsdatum= date('Y-m-d', $timestamp);
				
				$aenderungsdatum= date('Y-m-d',$timestamp);
				$gruppen_id=$gruppe->getG_id();
				
				
				// Schritt 2: Daten pr�fen und Fehler in Array füllen
				$errorStr ="";
				$msg="";
				
				// #TODO Fehlerüberprüfung fehlt!
				
				
				// Zahlung-Objekt mit Daten aus Request-Array f�llen
				$zahlung->setErstellungsdatum($erstellungsdatum);
				$zahlung->setZahlungsbeschreibung($zahlungsbeschreibung);
				$zahlung->setZahlungsdatum($zahlungsdatum);
				$zahlung->setBetrag($betrag);
				$zahlung->setK_id($k_id);
				$zahlung->setAenderungsdatum($aenderungsdatum);
				$zahlung->setG_id($gruppen_id); 

					
				// Wenn tempor�res Objekt gef�llt wurde kann mit diesen Werten das Objekt �ber die anlegen-Fkt in die DB geschrieben werden
				if ($errorStr == "" && $zahlung->anlegen()) {
				
				
				
				 // array_push($msg, "Gruppe erfolgreich gespeichert!");
				 //  $msg .= "Gruppe erfolgreich gespeichert!";
				 $saved = true;
				 	
				 // Neue Z_id durch Laden der neu erstellten Gruppe ins Objekt laden
				 $zahlung->laden();
				 	
				 $user_id=$_SESSION['user']->getU_id();
				 
				
				 
				 $anteile=array();
				 $i=0;
				 $summe=0;
				 foreach ($_POST['anteilsbetrag'] as $zaehler => $anteil) {

				 	$anteile[]=$anteil;
				 	$i++;
				 	$summe += $anteil;
				 }
				 var_dump ($summe);
 				 if($summe != $betrag){
 				 	var_dump ($summe);
				 	
 				 	echo ("Die Anteile mssen zusammen der Gesamtsumme entsprechen.");
 				 }else {
 					echo ("Das sollte hier eigentlich echt nich stehen");
 				 		
				 
				 $counter=0;
				 // Legt die zugehrigen Zahlungsteilnehmer Datenstze an, auer fr sich selbst (info wird aber fr Anteil bentigt!)
				 foreach ($_POST['zahlungsteilnehmer'] as $key => $value) {
				 	
				 	// Variablen befuellen
			 		$zahlungsteilnehmer=new Zahlungsteilnehmer();
			 		
				 	$zahlungs_id=$zahlung->getZ_id();
				 	
				 	if($value == $user_id) {
					 		$status="beglichen"; 
				 	} else {
					 		$status="offen";
				 	}
				 	$anteil=$anteile[$counter];<commit_msg>laaalaaa<commit_after><?php
namespace Application\Controller;


use Zend\Mvc\Controller\AbstractActionController;
use Zend\View\Model\ViewModel;
use Application\Model\Gruppe;
use Application\Model\User;
use Application\Model\Gruppenmitglied;
use Application\Model\Kategorie;
use Application\Model\Zahlung;
use Application\Model\Zahlungsteilnehmer;


class ZahlunganlegenController extends AbstractActionController {

	function zahlunganlegenAction() {
		// TODO Berechtigungspr�fung
		session_start();
		  

		

		$errors = array();

		if($_SESSION['angemeldet'] != 'ja') {

			array_push($errors, "Sie müssen angemeldet sein um eine Zahlung zu erstellen!");

			$view = new ViewModel(array(
					$errors
			));
			$view->setTemplate('application/index/index.phtml');
			return $view;

		} else {
			
			
			
			//Liste alle verf�gbaren Kateforien holen
			$kategorieliste = Kategorie::listeHolen();

			// Liste der User-Objekte der Gruppenmitglieder holen
			$gruppe = new Gruppe();
			$gruppe->laden($_GET['g_id']);
			
			$mitgliederliste = User::gruppenmitgliederlisteholen($gruppe->getG_id());
			
			// HEutigers Datum als erstellungsdatum
			date_default_timezone_set("Europe/Berlin");
			$timestamp=time();
			$erstellungsdatum= date('Y-m-d', $timestamp);
			
			$zahlung = new Zahlung();
				

			$saved= false;
			$msg = array();

			if ($_REQUEST['speichern']) {

				$anteile=array();
				$i=0;
				$summe=0;
				foreach ($_POST['anteilsbetrag'] as $zaehler => $anteil) {
				
					$anteile[]=$anteil;
					$i++;
					$summe += $anteil;
				}
				var_dump ($summe);
				if($summe != $betrag){
					var_dump ($summe);
				
					echo ("Die Anteile mssen zusammen der Gesamtsumme entsprechen.");
				}else {
					
				// Schritt 1:  Werte aus Formular einlesen
				$z_id=$_REQUEST["z_id"];
				$zahlungsbeschreibung=$_REQUEST["zahlungsbeschreibung"];
				$zahlungsdatum=$_REQUEST["zahlungsdatum"];
				$betrag=$_REQUEST["betrag"];
				$k_id=$_REQUEST["k_id"];
				
				//date_default_timezone_set("Europe/Berlin");
				//$timestamp=time();
				//$erstellungsdatum= date('Y-m-d', $timestamp);
				
				$aenderungsdatum= date('Y-m-d',$timestamp);
				$gruppen_id=$gruppe->getG_id();
				
				
				// Schritt 2: Daten pr�fen und Fehler in Array füllen
				$errorStr ="";
				$msg="";
				
				// #TODO Fehlerüberprüfung fehlt!
				
				
				// Zahlung-Objekt mit Daten aus Request-Array f�llen
				$zahlung->setErstellungsdatum($erstellungsdatum);
				$zahlung->setZahlungsbeschreibung($zahlungsbeschreibung);
				$zahlung->setZahlungsdatum($zahlungsdatum);
				$zahlung->setBetrag($betrag);
				$zahlung->setK_id($k_id);
				$zahlung->setAenderungsdatum($aenderungsdatum);
				$zahlung->setG_id($gruppen_id); 

					
				// Wenn tempor�res Objekt gef�llt wurde kann mit diesen Werten das Objekt �ber die anlegen-Fkt in die DB geschrieben werden
				if ($errorStr == "" && $zahlung->anlegen()) {
				
				
				
				 // array_push($msg, "Gruppe erfolgreich gespeichert!");
				 //  $msg .= "Gruppe erfolgreich gespeichert!";
				 $saved = true;
				 	
				 // Neue Z_id durch Laden der neu erstellten Gruppe ins Objekt laden
				 $zahlung->laden();
				 	
				 $user_id=$_SESSION['user']->getU_id();
				 
				
				 
				// hier war der Code nach if ($_REQUEST['speichern']) { zuvor
 				 		
				 
				 $counter=0;
				 // Legt die zugehrigen Zahlungsteilnehmer Datenstze an, auer fr sich selbst (info wird aber fr Anteil bentigt!)
				 foreach ($_POST['zahlungsteilnehmer'] as $key => $value) {
				 	
				 	// Variablen befuellen
			 		$zahlungsteilnehmer=new Zahlungsteilnehmer();
			 		
				 	$zahlungs_id=$zahlung->getZ_id();
				 	
				 	if($value == $user_id) {
					 		$status="beglichen"; 
				 	} else {
					 		$status="offen";
				 	}
				 	$anteil=$anteile[$counter];
{'fraction_non_alphanumeric': 0.14091747956762457, 'fraction_numerical': 0.001318217769575534, 'mean_word_length': 3.114425162689805, 'pattern_counts': {'":': 0, '<': 5, '<?xml version=': 0, '>': 37, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '416482', 'n_tokens_mistral': 3448, 'n_tokens_neox': 2771, 'n_words': 491}