1<?php 2 3declare(strict_types=1); 4 5use Fisharebest\Webtrees\I18N; 6use Fisharebest\Webtrees\Individual; 7use Fisharebest\Webtrees\Tree; 8 9/** 10 * @var string $ajax_url 11 * @var int $generations 12 * @var Individual $individual 13 * @var int $maximum_generations 14 * @var int $maximum_width 15 * @var int $minimum_generations 16 * @var int $minimum_width 17 * @var string $style 18 * @var array<string,string> $styles 19 * @var string $title 20 * @var Tree $tree 21 * @var int $width 22 */ 23 24?> 25 26<h2 class="wt-page-title"> 27 <?= $title ?> 28</h2> 29 30<form method="post" class="wt-page-options wt-page-options-fan-chart d-print-none"> 31 <div class="row"> 32 <label class="col-sm-3 col-form-label wt-page-options-label" for="xref"> 33 <?= I18N::translate('Individual') ?> 34 </label> 35 <div class="col-sm-9 wt-page-options-value"> 36 <?= view('components/select-individual', ['name' => 'xref', 'individual' => $individual, 'tree' => $tree, 'required' => true]) ?> 37 </div> 38 </div> 39 40 <div class="row"> 41 <label class="col-sm-3 col-form-label wt-page-options-label" for="style"> 42 <?= I18N::translate('Layout') ?> 43 </label> 44 <div class="col-sm-9 wt-page-options-value"> 45 <?= view('components/select', ['name' => 'style', 'selected' => $style, 'options' => $styles]) ?> 46 </div> 47 </div> 48 49 <div class="row"> 50 <label class="col-sm-3 col-form-label wt-page-options-label" for="generations"> 51 <?= I18N::translate('Generations') ?> 52 </label> 53 <div class="col-sm-9 wt-page-options-value"> 54 <?= view('components/select-number', ['name' => 'generations', 'selected' => $generations, 'options' => range($minimum_generations, $maximum_generations)]) ?> 55 </div> 56 </div> 57 58 <div class="row"> 59 <label class="col-sm-3 col-form-label wt-page-options-label" for="width"> 60 <?= I18N::translate('Zoom') ?> 61 </label> 62 <div class="col-sm-9 wt-page-options-value"> 63 <div class="input-group"> 64 <input class="form-control" id="width" max="<?= $maximum_width ?>" min="<?= $minimum_width ?>" name="width" required="required" type="number" value="<?= $width ?>"> 65 <span class="input-group-text">%</span> 66 </div> 67 </div> 68 </div> 69 70 <div class="row mb-3"> 71 <div class="col-form-label col-sm-3 wt-page-options-label"></div> 72 <div class="col-sm-9 wt-page-options-value"> 73 <input class="btn btn-primary" type="submit" value="<?= /* I18N: A button label. */ I18N::translate('view') ?>"> 74 </div> 75 </div> 76 77 <?= csrf_field() ?> 78</form> 79 80<div class="wt-ajax-load wt-page-content wt-chart wt-chart-fan" data-wt-ajax-url="<?= e($ajax_url) ?>"></div> 81