| 
						
						
							
								
							
						
						
					 | 
				
				 | 
				
					@ -58,15 +58,17 @@ function generatePassword($length = 20) { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					} | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					function generateUrl($supplier = null, $event = null) { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
						global $requestUrl; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
						global $requestUrl, $inIframe; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					  $queryString = $inIframe ? '?iframe' : ''; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
						if (is_null($supplier)) | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							return $requestUrl; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							return $requestUrl . $queryString; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
						if (is_null($event)) | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							return sprintf('%s/%s', $requestUrl, $supplier); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							return sprintf('%s/%s', $requestUrl, $supplier) . $queryString; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
						return sprintf('%s/%s/%s', $requestUrl, $supplier, $event); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
						return sprintf('%s/%s/%s', $requestUrl, $supplier, $event) . $queryString; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					} | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					function findNext($start, $frequency, $excludes = [], $vsNow = true, $maxIterations = 1000, $direction = +1) { | 
				
			
			
		
	
	
		
			
				
					| 
						
							
								
							
						
						
							
								
							
						
						
					 | 
				
				 | 
				
					@ -111,6 +113,7 @@ define('DATA_FILE', __DIR__ . DIRECTORY_SEPARATOR . 'data.php'); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					if (file_exists(CONFIG_FILE)) require_once CONFIG_FILE; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					if (!isset($config)) $config = []; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					$inIframe = isset($_REQUEST['iframe']); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					$action = (isset($_REQUEST['action']) and preg_match(ACTION_REGEX, $_REQUEST['action'])) ? $_REQUEST['action'] : null; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					$supplier = array_key_exists('supplier', $_REQUEST) ? $_REQUEST['supplier'] : $requestSupplier; | 
				
			
			
		
	
	
		
			
				
					| 
						
							
								
							
						
						
							
								
							
						
						
					 | 
				
				 | 
				
					@ -390,6 +393,7 @@ $linkUrl = !$hasSupplier ? generateUrl() : (!$hasEvent ? generateUrl($supplier) | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							<style type="text/css">.sortable th.dir-d::after{color:inherit;content:' \025BE'}.sortable th.dir-u::after{color:inherit;content:' \025B4'}</style> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
						</head> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
						<body> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    <?php if (!$inIframe) : ?>
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							<header> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
								<nav class="navbar navbar-dark bg-dark"> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
									<div class="container-fluid"> | 
				
			
			
		
	
	
		
			
				
					| 
						
							
								
							
						
						
							
								
							
						
						
					 | 
				
				 | 
				
					@ -423,6 +427,7 @@ $linkUrl = !$hasSupplier ? generateUrl() : (!$hasEvent ? generateUrl($supplier) | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
									</div> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
								</nav> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							</header> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    <?php endif; // !$inIframe ?>
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							<main> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							<?php if (!$hasSupplier) : ?>
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
								<section class="container-fluid pt-3"> | 
				
			
			
		
	
	
		
			
				
					| 
						
						
						
							
								
							
						
					 | 
				
				 | 
				
					@ -433,6 +438,7 @@ $linkUrl = !$hasSupplier ? generateUrl() : (!$hasEvent ? generateUrl($supplier) | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
									<div class="row mb-3 g-3"> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
										<div class="col-12"> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
											<form action="<?php echo generateUrl(); ?>" method="post"> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					              <?php if ($inIframe) : ?><input type="hidden" name="iframe" /><?php endif; // $inIframe ?>
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
												<datalist id="supplierList"> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
													<?php foreach ($suppliers as $supplier) : ?>
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
													<option value="<?php echo $supplier; ?>" /> | 
				
			
			
		
	
	
		
			
				
					| 
						
							
								
							
						
						
							
								
							
						
						
					 | 
				
				 | 
				
					@ -471,6 +477,7 @@ $linkUrl = !$hasSupplier ? generateUrl() : (!$hasEvent ? generateUrl($supplier) | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
									<section class="container-fluid"> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
										<div class="row g-3">	 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
											<form action="<?php echo generateUrl($supplier); ?>" method="post"> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					              <?php if ($inIframe) : ?><input type="hidden" name="iframe" /><?php endif; // $inIframe ?>
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
												<div class="row mb-3"> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
													<label for="title" class="col-sm-2 col-form-label">Titre</label> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
													<div class="col-sm-10"> | 
				
			
			
		
	
	
		
			
				
					| 
						
							
								
							
						
						
							
								
							
						
						
					 | 
				
				 | 
				
					@ -581,6 +588,7 @@ $linkUrl = !$hasSupplier ? generateUrl() : (!$hasEvent ? generateUrl($supplier) | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
											<div class="row my-3"> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
												<div class="col"> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
													<h1> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					                  <?php if (!$inIframe) : ?>
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
														<div class="btn-group float-end" role="group"> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
															<?php if (isset($previousEvent)) : ?>
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
																<a class="btn btn-outline-primary" href="<?php echo generateUrl($supplier, $previousEvent); ?>" title="Événement précédent"> | 
				
			
			
		
	
	
		
			
				
					| 
						
						
						
							
								
							
						
					 | 
				
				 | 
				
					@ -605,6 +613,7 @@ $linkUrl = !$hasSupplier ? generateUrl() : (!$hasEvent ? generateUrl($supplier) | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
																</a> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
															<?php endif; ?>
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
														</div> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					                  <?php endif; // !$inIframe ?>
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
														<?php echo $config[$supplier]['title']; ?>
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
														<?php echo $config[$supplier]['subtitle']; ?>
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
													</h1> | 
				
			
			
		
	
	
		
			
				
					| 
						
						
						
							
								
							
						
					 | 
				
				 | 
				
					@ -617,6 +626,7 @@ $linkUrl = !$hasSupplier ? generateUrl() : (!$hasEvent ? generateUrl($supplier) | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
										<section class="container-fluid"> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
											<div class="row g-3">	 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
												<form class="js-localremember bg-dark text-light" action="<?php echo generateUrl($supplier); ?>" method="post"> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					                <?php if ($inIframe) : ?><input type="hidden" name="iframe" /><?php endif; // $inIframe ?>
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
													<div class="row my-3"> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
														<label for="title" class="col-sm-2 col-form-label">Nom</label> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
														<div class="col-sm-10"> | 
				
			
			
		
	
	
		
			
				
					| 
						
							
								
							
						
						
							
								
							
						
						
					 | 
				
				 | 
				
					@ -691,6 +701,7 @@ $linkUrl = !$hasSupplier ? generateUrl() : (!$hasEvent ? generateUrl($supplier) | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
																			<?php endif; ?>
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
																			<td>	 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
																				<form onsubmit="return confirm('Souhaitez-vous vraiment annuler cette commande ?');"> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					                                <?php if ($inIframe) : ?><input type="hidden" name="iframe" /><?php endif; // $inIframe ?>
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
																					<input type="hidden" name="supplier" value="<?php echo $supplier; ?>" /> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
																					<input type="hidden" name="event" value="<?php echo $event; ?>" /> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
																					<input type="hidden" name="name" value="<?php echo $item['name']; ?>" /> | 
				
			
			
		
	
	
		
			
				
					| 
						
						
						
							
								
							
						
					 | 
				
				 | 
				
					@ -705,6 +716,7 @@ $linkUrl = !$hasSupplier ? generateUrl() : (!$hasEvent ? generateUrl($supplier) | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
														</div> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
													</div> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
												<?php endif; ?>
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					              <?php if (!$inIframe) : ?>                  
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
												<div class="col-12"> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
													<div class="accordion accordion-flush"> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
														<div class="accordion-item"> | 
				
			
			
		
	
	
		
			
				
					| 
						
						
						
							
								
							
						
					 | 
				
				 | 
				
					@ -729,6 +741,7 @@ $linkUrl = !$hasSupplier ? generateUrl() : (!$hasEvent ? generateUrl($supplier) | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
														</div> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
													</div> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
												</div> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					              <?php endif; // !$inIframe ?>
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
											</div> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
										</section> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
									<?php endif; /* $supplierIsNew */ ?>
 | 
				
			
			
		
	
	
		
			
				
					| 
						
							
								
							
						
						
							
								
							
						
						
					 | 
				
				 | 
				
					@ -759,6 +772,21 @@ $linkUrl = !$hasSupplier ? generateUrl() : (!$hasEvent ? generateUrl($supplier) | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
														</button> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
													</div> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
													<div class="col-12"> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
														IFrame | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
													</div> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
													<div class="col-12 text-center"> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					                  <pre id="iframeCode"><?php ob_start();  ?>
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					<iframe src="<?php echo generateUrl($supplier); ?>"> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					</iframe> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					                  <?php echo htmlentities(ob_get_clean()); ?></pre>
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
														<button class="btn btn-outline-dark js-clipboard" type="button" role="button" data-clipboard-target="#frameCode" data-bs-toggle="tooltip" data-bs-trigger="manual"> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
															<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" class="bi bi-clipboard" viewBox="0 0 16 16"> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
																<path d="M4 1.5H3a2 2 0 0 0-2 2V14a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V3.5a2 2 0 0 0-2-2h-1v1h1a1 1 0 0 1 1 1V14a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1V3.5a1 1 0 0 1 1-1h1v-1z"/> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
																<path d="M9.5 1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-3a.5.5 0 0 1-.5-.5v-1a.5.5 0 0 1 .5-.5h3zm-3-1A1.5 1.5 0 0 0 5 1.5v1A1.5 1.5 0 0 0 6.5 4h3A1.5 1.5 0 0 0 11 2.5v-1A1.5 1.5 0 0 0 9.5 0h-3z"/> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
															</svg> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
														</button> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
													</div> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
													<div class="col-12"> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
														QR Code | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
													</div> | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
													<div class="col-12"> | 
				
			
			
		
	
	
		
			
				
					| 
						
							
								
							
						
						
						
					 | 
				
				 | 
				
					
  |