<?php include(realpath(dirname(__FILE__)."/../")."/header.php"); ?>

    <!-- start page title -->
    <div class="row">
      <div class="col-12">
        <div class="page-title-box">
          <div class="page-title-right">
            <ol class="breadcrumb m-0">
              <li class="breadcrumb-item"><a href="<?=self::getUrl("Dashboard")?>">the-tool</a></li>
              <?php if(is_array($filter['addresstype']) && count($filter['addresstype'])): ?>
              <li class="breadcrumb-item"><a href="<?=self::getUrl("Address")?>">Personen & Firmen</a></li>
              <li class="breadcrumb-item active">
                <?php foreach($filter['addresstype'] as $type) { $types[] = __($type); } ?>
                <?=implode(", ", $types)?>
              </li>
              <?php else: ?>
              <li class="breadcrumb-item active">Personen & Firmen</li>
              <?php endif; ?>
            </ol>
          </div>
          <h4 class="page-title">Personen & Firmen</h4>
        </div>
      </div>
    </div>
    <!-- end page title -->

    <div class="row">
      <div class="col-lg-12">
        
        <div class="card">
          <div class="card-body mb-3">
            <h4 class="header-title mb-3">Filter</h4>
            
            <form method="get" action="<?=self::getUrl("Address")?>">
              <div class="row">
                <?php if($me->is("Admin")): ?>
                <div class="col-2">
                  <label class="form-label" for="filter_addresstype">Rolle</label>
                  <select name="filter[addresstype][]" id="filter_addresstype" class="form-control" multiple="multiple">
                    <option value="systemowner" <?=(in_array("systemowner", $filter["addresstype"])) ? "selected='selected'" : ""?>><?=__("systemowner")?></option>
                    <option value="netowner" <?=(in_array("netowner", $filter["addresstype"])) ? "selected='selected'" : "netowner"?>><?=__("netowner")?></option>
                    <option value="salespartner" <?=(in_array("salespartner", $filter["addresstype"])) ? "selected='selected'" : "salespartner"?>><?=__("salespartner")?></option>
                    <option value="pipeworker" <?=(in_array("pipeworker", $filter["addresstype"])) ? "selected='selected'" : "pipeworker"?>><?=__("pipeworker")?></option>
                    <option value="lineworker" <?=(in_array("lineworker", $filter["addresstype"])) ? "selected='selected'" : "lineworker"?>><?=__("lineworker")?></option>
                    <option value="pipeplanner" <?=(in_array("pipeplanner", $filter["addresstype"])) ? "selected='selected'" : "pipeplanner"?>><?=__("pipeplanner")?></option>
                    <option value="lineplanner" <?=(in_array("lineplanner", $filter["addresstype"])) ? "selected='selected'" : "lineplanner"?>><?=__("lineplanner")?></option>
                    <option value="netoperator" <?=(in_array("netoperator", $filter["addresstype"])) ? "selected='selected'" : "netoperator"?>><?=__("netoperator")?></option>
                    <option value="support" <?=(in_array("support", $filter["addresstype"])) ? "selected='selected'" : "support"?>><?=__("support")?></option>
                    <option value="billing" <?=(in_array("billing", $filter["addresstype"])) ? "selected='selected'" : ""?>><?=__("billing")?></option>
                    <option value="employee" <?=(in_array("employee", $filter["addresstype"])) ? "selected='selected'" : ""?>><?=__("employee")?></option>
                    <option value="customer" <?=(in_array("customer", $filter["addresstype"])) ? "selected='selected'" : ""?>><?=__("customer")?></option>
                    <option value="supplier" <?=(in_array("supplier", $filter["addresstype"])) ? "selected='selected'" : ""?>><?=__("supplier")?></option>
                    <option value="contact" <?=(in_array("contact", $filter["addresstype"])) ? "selected='selected'" : ""?>><?=__("contact")?></option>
                  </select>
                </div>
                <?php endif; ?>
                
                <div class="col-1">
                  <label class="form-label" for="filter_customer_number">Kundennummer</label>
                  <input type="text" class="form-control" name="filter[customer_number]" id="filter_customer_number" value="<?=$filter['customer_number']?>" />
                </div>
                
                <div class="col-1">
                  <label class="form-label" for="filter_spin">Service PIN</label>
                  <input type="text" class="form-control" name="filter[spin]" id="filter_spin" value="<?=$filter['spin']?>" />
                </div>
                
                <div class="col-2">
                  <label class="form-label" for="filter_company">Firma</label>
                  <input type="text" class="form-control" name="filter[company]" id="filter_company" value="<?=$filter['company']?>" />
                </div>
                
                <div class="col-1">
                  <label class="form-label" for="filter_firstname">Vorname</label>
                  <input type="text" class="form-control" name="filter[firstname]" id="filter_firstname" value="<?=$filter['firstname']?>" />
                </div>
                
                <div class="col-1">
                  <label class="form-label" for="filter_lastname">Nachname</label>
                  <input type="text" class="form-control" name="filter[lastname]" id="filter_lastname" value="<?=$filter['lastname']?>" />
                </div>
                
                <div class="col-2">
                  <label class="form-label" for="filter_street">Straße</label>
                  <input type="text" class="form-control" name="filter[street]" id="filter_street" value="<?=$filter['street']?>" />
                </div>
                
                <div class="col-1">
                  <label class="form-label" for="filter_zip">PLZ</label>
                  <input type="text" class="form-control" name="filter[zip]" id="filter_zip" value="<?=$filter['zip']?>" />
                </div>
                
                <div class="col-1">
                  <label class="form-label" for="filter_city">Ort</label>
                  <input type="text" class="form-control" name="filter[city]" id="filter_city" value="<?=$filter['city']?>" />
                </div>
                
                
                <div class="col-1">
                  <label class="form-label" for="filter_country">Land</label>
                  <input type="text" class="form-control" name="filter[country]" id="filter_country" value="<?=$filter['country']?>" />
                </div>
                
                <div class="col-1">
                  <label class="form-label" for="filter_pfm">Telefon/Fax/Mobil</label>
                  <input type="text" class="form-control" name="filter[pfm]" id="filter_pfm" value="<?=$filter['pfm']?>" />
                </div>
                
                <div class="col-1">
                  <label class="form-label" for="filter_email">Email</label>
                  <input type="text" class="form-control" name="filter[email]" id="filter_email" value="<?=$filter['email']?>" />
                </div>
                
                <div class="col-1">
                  <label class="form-label" for="filter_note">Notiz</label>
                  <input type="text" class="form-control" name="filter[note]" id="filter_note" value="<?=$filter['note']?>" />
                </div>
                
                
                
              </div>
              <div class="row mt-2">
                <div class="col">
                  <button type="submit" class="btn btn-primary">Filter anwenden</button>
                  <a class="btn btn-secondary" href="<?=self::getUrl("Address")?>">Filter zurücksetzen</a>
                </div>
              </div>
            </form>
            
          </div>
        </div>
        
        
        <div class="card">
          <div class="card-body mb-3">
            <div class="float-left">
              <h4 class="header-title">Liste aller Personen & Firmen</h4>
              <?php if(is_array($filter) && count($filter)): ?>
              <p class="sub-header">
                <?php if(array_key_exists("parents_only", $filter) && $filter['parents_only'] == 0): ?>
                  Zeige alle Personen und Firmen<br />
                <?php else: ?>
                  Zeige nur Personen und Firmen ohne Zugehörigkeit an. <a href="<?=self::getUrl("Address", "Index", ['filter' => array_merge($filter, ["parents_only" => 0])])?>">Alle anzeigen</a><br />
                <?php endif; ?>
                <?php if(is_array($filter['addresstype']) && count($filter['addresstype'])): ?>
                  Gefiltert nach Rolle: <?=implode(", ", $types)?><br />
                <?php endif; ?>
              </p>
              <?php endif; ?>
            </div>
            <div class="float-right">
              <a class="btn btn-primary" href="<?=self::getUrl("Address", "add")?>"><i class="fas fa-plus"></i> Neue Person/Firma anlegen</a>
            </div>
            
            <?php if($pagination['maxItems'] > $pagination['count']): ?>
              <nav>
                <ul class="pagination justify-content-center mb-1">
                  <li class="page-item <?=($pagination['start'] - $pagination['count'] < 0) ? "disabled" : ""?>">
                    <a class="page-link" href="<?=$this->getUrl($Mod, "Index", ["filter" => $filter])?>" tabindex="-1">Erste</a>
                  </li>
                  <li class="page-item <?=($pagination['start'] - $pagination['count'] < 0) ? "disabled" : ""?>">
                    <a class="page-link" href="<?=$this->getUrl($Mod,"Index",['s' => $pagination['start'] - $pagination['count'], "filter" => $filter])?>" tabindex="-1">Zurück</a>
                  </li>
                  <?php for($i = 0; $i < ($pagination['maxItems'] / $pagination['count']); $i++): ?>
                    <li class="page-item <?=($pagination['start'] == $i*$pagination['count']) ? "disabled font-weight-bold" : ""?>"><a class="page-link" href="<?=$this->getUrl($Mod,"Index",['s' => $i*$pagination['count'], "filter" => $filter])?>"><?=$i+1?></a></li>
                  <?php endfor; ?>
                  <li class="page-item <?=($pagination['maxItems'] / ($pagination['start'] + $pagination['count'])  < 1) ? "disabled" : ""?>">
                    <a class="page-link" href="<?=$this->getUrl($Mod,"Index",['s' => $pagination['start'] + $pagination['count'], "filter" => $filter])?>">Vor</a>
                  </li>
                  <li class="page-item <?=($pagination['maxItems'] / ($pagination['start'] + $pagination['count'])  < 1) ? "disabled" : ""?>">
                    <a class="page-link" href="<?=$this->getUrl($Mod,"Index",['s' => ($pagination['maxItems'] - $pagination['maxItems'] % $pagination['count']), "filter" => $filter])?>">Letzte</a>
                  </li>
                </ul>
              </nav>
            <?php endif; ?>
            <div class="pagination justify-content-center">
              <?php if($pagination['maxItems']): ?>
                Adressen <?=$pagination['start']+1?> bis <?=($pagination['start'] + $pagination['count'] > $pagination['maxItems']) ? $pagination['maxItems'] : $pagination['start'] + $pagination['count']?> von <?=$pagination['maxItems']?>
              <?php else: ?>
                Keine Adressen gefunden
              <?php endif; ?>
            </div>
            
            <table class="table table-striped table-hover">
              <tr>
                <th>Typ</th>
                <th>Kundennummer</th>
                <th>Firma</th>
                <th>Name</th>
                <th>Adresse</th>
                <th>Telefon</th>
                <th>Email</th>
                <th></th>
              </tr>
              <?php foreach($addresses as $address): ?>
              <tr>
                <?php if(is_array($address->types)):?>
                  <?php
                    $types = array_keys($address->types); 
                    $l7d_types = [];
                    foreach($types as $type):
                      $l7d_types[] = __($type);
                    endforeach;
                  ?>
                  <td title="<?=implode(", ", $l7d_types)?>">
                  <?=$l7d_types[0]?><?=(count($types) > 1) ? ", ..." : ""?>
                  </td>
                <?php endif; ?>
                <td>
                  <?=$address->customer_number?>
                  <?=($address->spin) ? "<br /><span class='text-pink'>".$address->spin."</span>" : ""?>
                </td>
                <td><?=nl2br($address->company)?></td>
                <td><?=$address->getFullName()?></td>
                <td>
                  <?=$address->street?><br />
                  <?=$address->zip?> <?=$address->city?>
                </td>
                <td><?=$address->phone?></td>
                <td><?=$address->email?></td>
                <td style="text-align: left; letter-spacing: 4px; font-size: 1.1em;">
                  <a href="<?=self::getUrl("User", "Index", ["filter" => ["address_id" => $address->id]])?>" title="Benutzer anzeigen"><i class="fas fa-users"></i></a>
                  <a href="<?=self::getUrl("Address", "edit", ["id" => $address->id])?>"><i class="far fa-edit"  title="Bearbeiten"></i></a>
                  <a href="<?=self::getUrl("Address", "delete", ["id" => $address->id])?>" onclick="if(!confirm('Person/Firma wirklich löschen?')) return false;" class="text-danger" title="Löschen"><i class="fas fa-trash"></i></a>
                </td>
              </tr>
              <?php endforeach; ?>
            </table>
            
            <?php if($pagination['maxItems'] > $pagination['count']): ?>
              <nav>
                <ul class="pagination justify-content-center mb-1">
                  <li class="page-item <?=($pagination['start'] - $pagination['count'] < 0) ? "disabled" : ""?>">
                    <a class="page-link" href="<?=$this->getUrl($Mod, "Index", ["filter" => $filter])?>" tabindex="-1">Erste</a>
                  </li>
                  <li class="page-item <?=($pagination['start'] - $pagination['count'] < 0) ? "disabled" : ""?>">
                    <a class="page-link" href="<?=$this->getUrl($Mod,"Index",['s' => $pagination['start'] - $pagination['count'], "filter" => $filter])?>" tabindex="-1">Zurück</a>
                  </li>
                  <?php for($i = 0; $i < ($pagination['maxItems'] / $pagination['count']); $i++): ?>
                    <li class="page-item <?=($pagination['start'] == $i*$pagination['count']) ? "disabled font-weight-bold" : ""?>"><a class="page-link" href="<?=$this->getUrl($Mod,"Index",['s' => $i*$pagination['count'], "filter" => $filter])?>"><?=$i+1?></a></li>
                  <?php endfor; ?>
                  <li class="page-item <?=($pagination['maxItems'] / ($pagination['start'] + $pagination['count'])  < 1) ? "disabled" : ""?>">
                    <a class="page-link" href="<?=$this->getUrl($Mod,"Index",['s' => $pagination['start'] + $pagination['count'], "filter" => $filter])?>">Vor</a>
                  </li>
                  <li class="page-item <?=($pagination['maxItems'] / ($pagination['start'] + $pagination['count'])  < 1) ? "disabled" : ""?>">
                    <a class="page-link" href="<?=$this->getUrl($Mod,"Index",['s' => ($pagination['maxItems'] - $pagination['maxItems'] % $pagination['count']), "filter" => $filter])?>">Letzte</a>
                  </li>
                </ul>
              </nav>
            <?php endif; ?>
            <div class="pagination justify-content-center">
              <?php if($pagination['maxItems']): ?>
                Adressen <?=$pagination['start']+1?> bis <?=($pagination['start'] + $pagination['count'] > $pagination['maxItems']) ? $pagination['maxItems'] : $pagination['start'] + $pagination['count']?> von <?=$pagination['maxItems']?>
              <?php else: ?>
                Keine Adressen gefunden
              <?php endif; ?>
            </div>
            
            
          </div>
        </div>
        
      </div>
    </div>

    <script type="text/javascript">
      $("#filter_addresstype").select2({closeOnSelect: false});
    </script>
    
<?php include(realpath(dirname(__FILE__)."/../")."/footer.php"); ?>