<?php

	 include('connection.php');
	if(ISSET($_POST['search'])){
		$date1 = date("Y-m-d", strtotime($_POST['date1']));
		$date2 = date("Y-m-d", strtotime($_POST['date2']));
		$query=mysqli_query($conn, "SELECT project.ProjectName, Remarks, PaymentDate, Amount, project.Id, project_transations.Id from project_transations JOIN project on project_transations.ProjectName=project.Id WHERE PTUserId ='" . $_SESSION['UserId'] . "' and `PaymentDate` BETWEEN '$date1' AND '$date2'") or die(mysqli_error());
		$row=mysqli_num_rows($query);
		if($row>0){
			while($project_transations=mysqli_fetch_array($query)){
?>
	<tr>
									
									<td><?php echo $project_transations ['PaymentDate']; ?></td>
									<td><?php echo $project_transations ['ProjectName'];?></td>
									<td><?php echo $project_transations ['Amount']; ?></td>
									<td  class="kkk"><?php echo $project_transations ['Remarks']; ?></td>
									
									<td class="kkk"><?php echo $project_transations ['Id']; ?></td>

									
                                           
											<td class="text-right">
											<div class="dropdown dropdown-action">
												<a href="#" class="action-icon dropdown-toggle" data-toggle="dropdown" aria-expanded="false"><i class="fa fa-ellipsis-v"></i></a>
												<div class="dropdown-menu dropdown-menu-right">
													<li>
													<a class="dropdown-item" href="employee_tran_edit.php?Id=<?php echo $project_transations["Id"]; ?>"><i class="btn btn-primary btn-xs glyphicon glyphicon-edit"></i> Edit</a>
													</li>
													<li>
													<a class="dropdown-item" href="employee_tran_display1.php?Id=<?php echo $project_transations["Id"]; ?>"><i class="btn btn-primary btn-xs glyphicon glyphicon-eye-open"></i> view</a>
													
													</li>
													<li>
													<a target="_blank" class="dropdown-item" href="MoneyRecpeit.php?Id=<?php echo $project_transations["Id"]; ?>"><i class="btn btn-primary btn-xs glyphicon glyphicon-eye-open"></i> MoneyRecpeit</a>
													</li>
												</div>
											</div>
										</td>
                                        </tr>
	
	
	
<?php
			}
		}else{
			echo'
			<tr>
				<td class="alert-info" colspan = "5"><h3 style="font-weight:bold; text-align: center;"><center ><svg xmlns="http://www.w3.org/2000/svg" width="25" height="25" fill="currentColor" class="bi bi-calendar-x-fill" viewBox="0 0 16 16">
  <path d="M4 .5a.5.5 0 0 0-1 0V1H2a2 2 0 0 0-2 2v1h16V3a2 2 0 0 0-2-2h-1V.5a.5.5 0 0 0-1 0V1H4V.5zM16 14V5H0v9a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2zM6.854 8.146 8 9.293l1.146-1.147a.5.5 0 1 1 .708.708L8.707 10l1.147 1.146a.5.5 0 0 1-.708.708L8 10.707l-1.146 1.147a.5.5 0 0 1-.708-.708L7.293 10 6.146 8.854a.5.5 0 1 1 .708-.708z"/>
</svg> Record Not Found!</center></h3></td>
			</tr>';
		}
	}else{
		$query=mysqli_query($conn, "SELECT project.ProjectName, Remarks, PaymentDate, Amount, project.Id, project_transations.Id from project_transations JOIN project on project_transations.ProjectName=project.Id where PTUserId ='" . $_SESSION['UserId'] . "'") or die(mysqli_error());
		while($project_transations=mysqli_fetch_array($query)){
?>
		<tr>
									
									<td><?php echo $project_transations ['PaymentDate']; ?></td>
									<td><?php echo $project_transations ['ProjectName'];?></td>
									<td><?php echo $project_transations ['Amount']; ?></td>
									<td  class="kkk"><?php echo $project_transations ['Remarks']; ?></td>
									
									<td class="kkk"><?php echo $project_transations ['Id']; ?></td>

									
                                           
											<td class="text-right">
											<div class="dropdown dropdown-action">
												<a href="#" class="action-icon dropdown-toggle" data-toggle="dropdown" aria-expanded="false"><i class="fa fa-ellipsis-v"></i></a>
												<div class="dropdown-menu dropdown-menu-right">
													<li>
													<a class="dropdown-item" href="employee_tran_edit.php?Id=<?php echo $project_transations["Id"]; ?>"><i class="btn btn-primary btn-xs glyphicon glyphicon-edit"></i> Edit</a>
													</li>
													<li>
													<a class="dropdown-item" href="employee_tran_display1.php?Id=<?php echo $project_transations["Id"]; ?>"><i class="btn btn-primary btn-xs glyphicon glyphicon-eye-open"></i> view</a>
													
													</li>
													<li>
													<a target="_blank" class="dropdown-item" href="MoneyRecpeit.php?Id=<?php echo $project_transations["Id"]; ?>"><i class="btn btn-primary btn-xs glyphicon glyphicon-eye-open"></i> MoneyRecpeit</a>
													</li>
												</div>
											</div>
										</td>
                                        </tr>
<?php
		}
	}
?>
<div><h4>
<?php
include('connection.php');
	if(ISSET($_POST['search'])){
		$date1 = date("Y-m-d", strtotime($_POST['date1']));
		$date2 = date("Y-m-d", strtotime($_POST['date2']));
		$sql = "SELECT  SUM(Amount) from project_transations WHERE PTUserId ='" . $_SESSION['UserId'] . "' and `PaymentDate` BETWEEN '$date1' AND '$date2'";
		$result = $conn->query($sql);
		//display data on web page
		while($row1 = mysqli_fetch_array($result)){
		echo " Total Amount : ". $row1['SUM(Amount)']." Tk";
		echo " Of Filtter Date From $date1 To $date2";
		}
	}
	
?>
</h4>
</div>
