<!-- DataTables -->
<link rel="stylesheet"
	  href="<?= base_url('<link rel="stylesheet" 
	href="https://cdn.datatables.net/1.13.6/css/dataTables.bootstrap.min.css">') ?>">
<link rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/npm/daterangepicker/daterangepicker.css"/>
<link rel="stylesheet" type="text/css" href="https://cdn.datatables.net/buttons/1.6.2/css/buttons.dataTables.min.css">

<div class="content-wrapper">
	<?php

	use Brick\Money\Context\AutoContext;
	use Brick\Money\CurrencyConverter;
	use Brick\Money\ExchangeRateProvider\BaseCurrencyProvider;
	use Brick\Money\ExchangeRateProvider\PDOProvider;
	use Brick\Money\ExchangeRateProvider\PDOProviderConfiguration;
	use Brick\Money\Money;

	// set to whatever your rates are relative to
	$baseCurrency = 'USD';

	// use your own credentials, or re-use your existing PDO connection
	$pdo = new PDO('mysql:host=' . $this->db->hostname . ';dbname=' . $this->db->database, $this->db->username, $this->db->password);

	$configuration = new PDOProviderConfiguration();

	$configuration->tableName = 'exchange_rate';
	$configuration->exchangeRateColumnName = 'exchange_rate';
	$configuration->targetCurrencyColumnName = 'target_currency';
	$configuration->sourceCurrencyCode = $baseCurrency;

	// this provider loads exchange rates from your database
	$provider = new PDOProvider($pdo, $configuration);

	// this provider calculates exchange rates relative to the base currency
	$provider = new BaseCurrencyProvider($provider, $baseCurrency);

	// this currency converter can now handle any currency pair
	$converter = new CurrencyConverter($provider);
	$context = new AutoContext();

	?>
	<!-- Content Header (Page header) -->
	<section class="content-header">

		<h1>
			<?= $this->lang->line('commission_payments_history');
			echo ' ' . $network . ' - ' . $country; ?>
			<!--			<input type="button" class="btn btn-primary pull-right" id="Bactiver"-->
			<!--				   value="Activer/Désactiver le(s) réseau(x)" />-->
		</h1>
		<?php
		

		if ($alert == "ok") {

			if (!$success == "ok") {
				?>
				<div class='alert alert-danger alert-dismissible col-xs-6'>
					<button type='button' class='close' data-dismiss='alert' aria-hidden='true'>×</button>
					<h4><i class='icon fa fa-ban'></i> Erreur!</h4>
					<?= $message; ?>
				</div>

				<?php
			} else {
				?>
				<div class="alert alert-success alert-dismissible col-xs-6">
					<button type="button" class="close" data-dismiss="alert" aria-hidden="true">&times;</button>
					<h4><i class="icon fa fa-check"></i> Success!</h4>
					<?= $message; ?>
				</div>

				<?php
			}
		}
		?>
	</section>
	<section class="content">
		<div class="row">
			<div class="col-md-4 col-sm-6 col-xs-12">
				<div class="info-box">
					<span class="info-box-icon bg-aqua"><i class="ion ion-android-time"></i></span>
					<div class="info-box-content">
						<span class="info-box-text"><?= $this->lang->line('Période') ?> </span>
						<span class="info-box-number">
                                    <input id="picker"
										   style="background: #fff; cursor: pointer; padding: 1px 1px; border: 1px solid #ccc; width: 100%"
										   data-category="<?= isset($category) ? $category : null ?>"
										   type="text" name="daterange"
										   data-lang="<?= $this->session->userdata('site_lang') ?>"
										   value="<?= ($startDate != null & $endDate != null) ? $startDate . ' - ' . $endDate : '' ?>"/>
                                    
						</span>
						<span> Format : <?= $this->session->userdata('site_lang') === 'french' ? 'Jour - Mois - Année ' : 'Year - Month - Day' ?> </span>
					</div>
				</div>
			</div>

		</div>
		<div class="row">
			<div class="col-xs-12">
				<div class="box">
					<div class="box-header">
						<h3 class="box-title"><?= $this->lang->line('commission_payments_history'); ?></h3>
					</div>
					<div class="box-body" style="overflow-x:auto;">
						<?php
						if ($payments){
						$numrows = $payments->num_rows();
						$num = 0;
						if ($numrows > 0) {
						$fmt = new NumberFormatter('fr_FR', NumberFormatter::DECIMAL);
						?>

						<table id="transactions" class="table table-bordered table-striped">
							<thead>
							<tr>
								<th align='center'>N°</th>
								<th>Agent</th>
								<th><?= $this->lang->line('Montant') ?></th>
								<th><?= $this->lang->line('initial_commission') ?></th>
								<th><?= $this->lang->line('final_commission') ?></th>
								<th align='center'>Date</th>
							</tr>
							</thead>
							<tbody>

							<?php

							foreach ($payments->result() as $row) {
								$num++;
								echo "<tr>
											<td align='center' >$num</td>
											<td>" . $row->lastname . "</td>
											<td>" . Money::of(round($row->amount, 2), $row->currency_code, $context)->formatTo('fr_FR') . "</td>
											<td>" . Money::of(round($row->initial_commission, 2), $row->currency_code, $context)->formatTo('fr_FR') . "</td>
											<td>" . Money::of(round($row->final_commission, 2), $row->currency_code, $context)->formatTo('fr_FR') . "</td>
											<td>" . $row->date . "</td>
											 </tr>";
							}
							?>
							</tbody>

							<?php
							} else {
								echo $this->lang->line('no_refund');
							}
							} else {
								echo $this->lang->line('no_refund');
							}
							?>

						</table>

					</div>
				</div>
			</div>
		</div>
	</section>


</div>
<!-- jQuery 2.2.4 -->
<script src="https://code.jquery.com/jquery-2.2.4.min.js"></script>

<!-- Bootstrap 3.3.7 -->
<script src="<?= base_url('bower_components/bootstrap/dist/js/bootstrap.min.js') ?>"></script>
<!-- DataTables -->
<script src="https://cdn.datatables.net/1.13.6/js/jquery.dataTables.min.js"></script>
<script src="https://cdn.datatables.net/1.13.6/js/dataTables.bootstrap.min.js"></script>
<!-- SlimScroll -->
<script src="<?= base_url('bower_components/jquery-slimscroll/jquery.slimscroll.min.js') ?>"></script>
<!-- FastClick -->
<script src="<?= base_url('bower_components/fastclick/lib/fastclick.js') ?>"></script>
<!-- AdminLTE App -->
<script src="<?= base_url('dist/js/adminlte.min.js') ?>"></script>
<!-- AdminLTE for demo purposes -->
<script src="<?= base_url('dist/js/demo.js') ?>"></script>

<script type="text/javascript" src="https://cdn.jsdelivr.net/momentjs/latest/moment-with-locales.min.js"></script>
<script type="text/javascript" src="https://cdn.jsdelivr.net/npm/daterangepicker/daterangepicker.min.js"></script>
<script type="text/javascript" src="https://cdn.datatables.net/plug-ins/1.10.19/sorting/datetime-moment.js"></script>
<script type="text/javascript" src="https://cdn.datatables.net/plug-ins/1.10.20/dataRender/datetime.js"></script
<script type="text/javascript" src="https://cdn.datatables.net/plug-ins/1.10.20/dataRender/datetime.js"></script>
<script type="text/javascript" src="https://cdn.datatables.net/buttons/1.6.2/js/dataTables.buttons.min.js"></script>
<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/jszip/3.1.3/jszip.min.js"></script>
<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/pdfmake/0.1.53/pdfmake.min.js"></script>
<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/pdfmake/0.1.53/vfs_fonts.js"></script>
<script type="text/javascript" src="https://cdn.datatables.net/buttons/1.6.2/js/buttons.html5.min.js"></script>
<script type="text/javascript" src="https://cdn.datatables.net/buttons/1.6.2/js/buttons.print.min.js"></script>
<script type="text/javascript" src="https://cdn.datatables.net/buttons/1.6.2/js/buttons.colVis.min.js"></script>

<script>
	$(function () {
		const lang = $('#picker').data('lang');
		const format = lang === 'french' ? 'fr' : 'en';
		moment.updateLocale(moment.locale(format), {invalidDate: ""}); // Blank text when is invalid date
		$('#transactions').DataTable({
			"aaSorting": [[5, "desc"]],
			"columnDefs": [{
				targets: 5,
				render: $.fn.dataTable.render.moment('YYYY-MM-DD HH:mm:ss', 'D MMMM YYYY HH:mm:ss', format)
			}],
			dom: 'Bfrtip',
			"buttons": [
				'pageLength',
				{
					"extend": 'excelHtml5',
					title: "<?= $this->lang->line('commission_payments_history') ?>",
					customizeData: function (data) {
						for (var i = 0; i < data.body.length; i++) {
							for (var j = 0; j < data.body[i].length; j++) {
								// data.body[i][j] = '\u200C' + data.body[i][j];
								if ([2,3,4].includes(j)) {
									// Get the value and strip the non numeric characters
									// var value = $(this).text();
									value = data.body[i][j].replace(',', ".")
									data.body[i][j] = Number(value.replace(/[^0-9\.-]+/g, ""));
								}
							}
						}
					},
					trim: false,
				},
				{
					extend: 'csvHtml5',
					title: "<?= $this->lang->line('commission_payments_history') ?>",
					customizeData: function (data) {
						for (var i = 0; i < data.body.length; i++) {
							for (var j = 0; j < data.body[i].length; j++) {
								// data.body[i][j] = '\u200C' + data.body[i][j];
								if ([2,3,4].includes(j)) {
									// Get the value and strip the non numeric characters
									// var value = $(this).text();
									value = data.body[i][j].replace(',', ".")
									data.body[i][j] = Number(value.replace(/[^0-9\.-]+/g, ""));
								}
							}
						}
					},
					trim: false,
				},
				{
					extend: 'pdfHtml5',
					orientation: 'landscape',
					pageSize: 'LEGAL',
					title: "<?= $this->lang->line('commission_payments_history') ?>",
					trim: false,
				},
				// 'colvis'
			]
		});
	});
</script>

<script type="text/javascript">
	var startDate;
	var endDate;

	$(function () {
		const lang = $('#picker').data('lang');
		const category = $('#picker').data('category');
		const id_network = "<?= $id_network?>";
		$('input[name="daterange"]').daterangepicker({
			opens: 'left',
			autoUpdateInput: false,
			locale: {
				format: lang === 'french' ? 'DD-MM-YYYY' : 'YYYY-MM-DD',
				cancelLabel: 'Clear'
			}
		}, function (start, end, label) {
			const debut = start.format('YYYY-MM-DD');
			const fin = end.format('YYYY-MM-DD');
			if (category)
				window.location = "<?= current_url()?>" + "?history=commission_payments" + "&d=" + debut + "&f=" + fin;
			else
				window.location = "<?= current_url()?>" + "?id="+id_network+"&history=commission_payments" + "&d=" + debut + "&f=" + fin;

		});

		$('input[name="daterange"]').on('cancel.daterangepicker', function (ev, picker) {
			//do something, like clearing an input
			$('#daterange').val('');
			if (category)
				window.location = "<?= current_url()?>" + "?history=commission_payments";
			else
				window.location = "<?= current_url()?>" + "?id="+id_network+"&history=commission_payments";
		});
	});

</script>

