Löschen von Kunden
This commit is contained in:
parent
a22df31b30
commit
5516913cc0
@ -21,7 +21,7 @@
|
|||||||
|
|
||||||
{% block body %}
|
{% block body %}
|
||||||
<div class="flex flex-col gap-6">
|
<div class="flex flex-col gap-6">
|
||||||
<div class="rounded-sm border bg-white px-7.5 py-6 shadow-lg dark:border-strokedark dark:bg-boxdark">
|
<div class="rounded-sm border bg-white px-6 py-6 shadow-lg dark:border-strokedark dark:bg-boxdark">
|
||||||
<div class="mb-6 px-7">
|
<div class="mb-6 px-7">
|
||||||
<h4 class="text-lg font-semibold text-gray-900 mb-4">{{ 'psc_shop_cms.Site'|trans }} {{ 'psc_shop_cms.Delete'|trans }}?</h4>
|
<h4 class="text-lg font-semibold text-gray-900 mb-4">{{ 'psc_shop_cms.Site'|trans }} {{ 'psc_shop_cms.Delete'|trans }}?</h4>
|
||||||
<div class="bg-yellow-50 border-l-4 border-yellow-400 p-4 mb-6">
|
<div class="bg-yellow-50 border-l-4 border-yellow-400 p-4 mb-6">
|
||||||
|
|||||||
@ -13,11 +13,11 @@ use PSC\Shop\OrderBundle\Form\Backend\Upload\DeleteType;
|
|||||||
use PSC\System\SettingsBundle\Document\LogEntry;
|
use PSC\System\SettingsBundle\Document\LogEntry;
|
||||||
use PSC\System\SettingsBundle\Service\History;
|
use PSC\System\SettingsBundle\Service\History;
|
||||||
use PSC\System\SettingsBundle\Service\Log;
|
use PSC\System\SettingsBundle\Service\Log;
|
||||||
|
use Symfony\Bridge\Twig\Attribute\Template;
|
||||||
use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
|
use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
|
||||||
|
use Symfony\Component\HttpFoundation\Request;
|
||||||
use Symfony\Component\HttpFoundation\Session\SessionInterface;
|
use Symfony\Component\HttpFoundation\Session\SessionInterface;
|
||||||
use Symfony\Component\Routing\Attribute\Route;
|
use Symfony\Component\Routing\Attribute\Route;
|
||||||
use Symfony\Bridge\Twig\Attribute\Template;
|
|
||||||
use Symfony\Component\HttpFoundation\Request;
|
|
||||||
|
|
||||||
class AddressDetailController extends AbstractController
|
class AddressDetailController extends AbstractController
|
||||||
{
|
{
|
||||||
@ -26,6 +26,7 @@ class AddressDetailController extends AbstractController
|
|||||||
*/
|
*/
|
||||||
private Log $logService;
|
private Log $logService;
|
||||||
private History $historyService;
|
private History $historyService;
|
||||||
|
|
||||||
public function __construct(Log $logService, History $historyService)
|
public function __construct(Log $logService, History $historyService)
|
||||||
{
|
{
|
||||||
$this->logService = $logService;
|
$this->logService = $logService;
|
||||||
@ -51,7 +52,7 @@ class AddressDetailController extends AbstractController
|
|||||||
DocumentManager $documentManager,
|
DocumentManager $documentManager,
|
||||||
SessionInterface $session,
|
SessionInterface $session,
|
||||||
\PSC\System\SettingsBundle\Service\Shop $shopService,
|
\PSC\System\SettingsBundle\Service\Shop $shopService,
|
||||||
$uuid = ""
|
$uuid = '',
|
||||||
) {
|
) {
|
||||||
/** @var ContactAddress $contact */
|
/** @var ContactAddress $contact */
|
||||||
$contactAddress = $entityManager
|
$contactAddress = $entityManager
|
||||||
@ -60,7 +61,7 @@ class AddressDetailController extends AbstractController
|
|||||||
/** @var \PSC\Shop\EntityBundle\Document\ContactAddress $contactDoc */
|
/** @var \PSC\Shop\EntityBundle\Document\ContactAddress $contactDoc */
|
||||||
$contactAddressDoc = $documentManager
|
$contactAddressDoc = $documentManager
|
||||||
->getRepository('PSC\Shop\EntityBundle\Document\ContactAddress')
|
->getRepository('PSC\Shop\EntityBundle\Document\ContactAddress')
|
||||||
->findOneBy(array('uid' => (string)$contactAddress->getUid()));
|
->findOneBy(array('uid' => (string) $contactAddress->getUid()));
|
||||||
/** @var \PSC\Shop\EntityBundle\Entity\Shop $selectedShop */
|
/** @var \PSC\Shop\EntityBundle\Entity\Shop $selectedShop */
|
||||||
$selectedShop = $shopService->getSelectedShop();
|
$selectedShop = $shopService->getSelectedShop();
|
||||||
/** @var Contact $contact */
|
/** @var Contact $contact */
|
||||||
@ -68,7 +69,7 @@ class AddressDetailController extends AbstractController
|
|||||||
/** @var \PSC\Shop\EntityBundle\Document\Contact $contactDoc */
|
/** @var \PSC\Shop\EntityBundle\Document\Contact $contactDoc */
|
||||||
$contactDoc = $documentManager
|
$contactDoc = $documentManager
|
||||||
->getRepository('PSC\Shop\EntityBundle\Document\Contact')
|
->getRepository('PSC\Shop\EntityBundle\Document\Contact')
|
||||||
->findOneBy(array('uid' => (string)$contact->getId()));
|
->findOneBy(array('uid' => (string) $contact->getId()));
|
||||||
if (!$request->isMethod('POST') && $contactAddressDoc) {
|
if (!$request->isMethod('POST') && $contactAddressDoc) {
|
||||||
$contactAddress->setKundenNr($contactAddressDoc->getKundenNr());
|
$contactAddress->setKundenNr($contactAddressDoc->getKundenNr());
|
||||||
$contactAddress->setHomepage($contactAddressDoc->getHomepage());
|
$contactAddress->setHomepage($contactAddressDoc->getHomepage());
|
||||||
@ -77,7 +78,7 @@ class AddressDetailController extends AbstractController
|
|||||||
} elseif (!$contactAddressDoc) {
|
} elseif (!$contactAddressDoc) {
|
||||||
if (!$contactDoc) {
|
if (!$contactDoc) {
|
||||||
$contactDoc = new \PSC\Shop\EntityBundle\Document\Contact();
|
$contactDoc = new \PSC\Shop\EntityBundle\Document\Contact();
|
||||||
$contactDoc->setKundenNr("");
|
$contactDoc->setKundenNr('');
|
||||||
$contactDoc->setUid($contact->getId());
|
$contactDoc->setUid($contact->getId());
|
||||||
$documentManager->persist($contactDoc);
|
$documentManager->persist($contactDoc);
|
||||||
}
|
}
|
||||||
@ -99,13 +100,25 @@ class AddressDetailController extends AbstractController
|
|||||||
$contactAddressDoc->setHomepage($contactAddress->getHomepage());
|
$contactAddressDoc->setHomepage($contactAddress->getHomepage());
|
||||||
$contactAddressDoc->setSteuerId($contactAddress->getSteuerId());
|
$contactAddressDoc->setSteuerId($contactAddress->getSteuerId());
|
||||||
$contactAddressDoc->setLId($contactAddress->getLId());
|
$contactAddressDoc->setLId($contactAddress->getLId());
|
||||||
$this->historyService->createHistoryEntry(new PSCHistory((string)$contactAddress->getUid()), $contactAddress, $contactAddressDoc);
|
$this->historyService->createHistoryEntry(
|
||||||
|
new PSCHistory((string) $contactAddress->getUid()),
|
||||||
|
$contactAddress,
|
||||||
|
$contactAddressDoc,
|
||||||
|
);
|
||||||
$entityManager->persist($contactAddress);
|
$entityManager->persist($contactAddress);
|
||||||
$entityManager->flush();
|
$entityManager->flush();
|
||||||
$documentManager->persist($contactAddressDoc);
|
$documentManager->persist($contactAddressDoc);
|
||||||
$documentManager->flush();
|
$documentManager->flush();
|
||||||
$session->getFlashBag()->add('success', 'Address has been updated!');
|
$session->getFlashBag()->add('success', 'Address has been updated!');
|
||||||
$this->logService->createLogEntry($selectedShop, $this->getUser(), LogEntry::INFO, PSCShopContactBundle::class, $contactAddress->getUuid(), "Address has been updated", ['contact' => $contact->getEmail()]);
|
$this->logService->createLogEntry(
|
||||||
|
$selectedShop,
|
||||||
|
$this->getUser(),
|
||||||
|
LogEntry::INFO,
|
||||||
|
PSCShopContactBundle::class,
|
||||||
|
$contactAddress->getUuid(),
|
||||||
|
'Address has been updated',
|
||||||
|
['contact' => $contact->getEmail()],
|
||||||
|
);
|
||||||
return $this->redirectToRoute('psc_shop_contact_backend_edit', array('uuid' => $contact->getUuid()));
|
return $this->redirectToRoute('psc_shop_contact_backend_edit', array('uuid' => $contact->getUuid()));
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -113,7 +126,7 @@ class AddressDetailController extends AbstractController
|
|||||||
'form' => $form->createView(),
|
'form' => $form->createView(),
|
||||||
'contact' => $contact,
|
'contact' => $contact,
|
||||||
'contactAddress' => $contactAddress,
|
'contactAddress' => $contactAddress,
|
||||||
'changes' => $this->historyService->getHistory(new PSCHistory(), (string)$contactAddress->getUid())
|
'changes' => $this->historyService->getHistory(new PSCHistory(), (string) $contactAddress->getUid()),
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -136,9 +149,8 @@ class AddressDetailController extends AbstractController
|
|||||||
DocumentManager $documentManager,
|
DocumentManager $documentManager,
|
||||||
SessionInterface $session,
|
SessionInterface $session,
|
||||||
\PSC\System\SettingsBundle\Service\Shop $shopService,
|
\PSC\System\SettingsBundle\Service\Shop $shopService,
|
||||||
$contactUUID = ""
|
$contactUUID = '',
|
||||||
) {
|
) {
|
||||||
|
|
||||||
/** @var Contact $contact */
|
/** @var Contact $contact */
|
||||||
$contact = $entityManager
|
$contact = $entityManager
|
||||||
->getRepository('PSC\Shop\EntityBundle\Entity\Contact')
|
->getRepository('PSC\Shop\EntityBundle\Entity\Contact')
|
||||||
@ -154,7 +166,7 @@ class AddressDetailController extends AbstractController
|
|||||||
/** @var \PSC\Shop\EntityBundle\Document\Contact $contactDoc */
|
/** @var \PSC\Shop\EntityBundle\Document\Contact $contactDoc */
|
||||||
$contactDoc = $documentManager
|
$contactDoc = $documentManager
|
||||||
->getRepository('PSC\Shop\EntityBundle\Document\Contact')
|
->getRepository('PSC\Shop\EntityBundle\Document\Contact')
|
||||||
->findOneBy(array('uid' => (string)$contact->getId()));
|
->findOneBy(array('uid' => (string) $contact->getId()));
|
||||||
$form = $this->createForm(ContactAddressType::class, $contactAddress);
|
$form = $this->createForm(ContactAddressType::class, $contactAddress);
|
||||||
$form->handleRequest($request);
|
$form->handleRequest($request);
|
||||||
if ($form->isSubmitted() && $form->isValid()) {
|
if ($form->isSubmitted() && $form->isValid()) {
|
||||||
@ -168,15 +180,22 @@ class AddressDetailController extends AbstractController
|
|||||||
$documentManager->persist($contactAddressDoc);
|
$documentManager->persist($contactAddressDoc);
|
||||||
$documentManager->flush();
|
$documentManager->flush();
|
||||||
$session->getFlashBag()->add('success', 'Address has been created!');
|
$session->getFlashBag()->add('success', 'Address has been created!');
|
||||||
$this->logService->createLogEntry($selectedShop, $this->getUser(), LogEntry::INFO, PSCShopContactBundle::class, $contactAddress->getUuid(), "Address has been created", ['contact' => $contact->getEmail()]);
|
$this->logService->createLogEntry(
|
||||||
|
$selectedShop,
|
||||||
|
$this->getUser(),
|
||||||
|
LogEntry::INFO,
|
||||||
|
PSCShopContactBundle::class,
|
||||||
|
$contactAddress->getUuid(),
|
||||||
|
'Address has been created',
|
||||||
|
['contact' => $contact->getEmail()],
|
||||||
|
);
|
||||||
return $this->redirectToRoute('psc_shop_contact_backend_edit', array('uuid' => $contact->getUuid()));
|
return $this->redirectToRoute('psc_shop_contact_backend_edit', array('uuid' => $contact->getUuid()));
|
||||||
}
|
}
|
||||||
|
|
||||||
return array(
|
return array(
|
||||||
'form' => $form->createView(),
|
'form' => $form->createView(),
|
||||||
'contact' => $contact,
|
'contact' => $contact,
|
||||||
'contactAddress' => $contactAddress
|
'contactAddress' => $contactAddress,
|
||||||
|
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -191,7 +210,7 @@ class AddressDetailController extends AbstractController
|
|||||||
* @return array|\Symfony\Component\HttpFoundation\RedirectResponse
|
* @return array|\Symfony\Component\HttpFoundation\RedirectResponse
|
||||||
* @throws \Doctrine\ODM\MongoDB\MongoDBException
|
* @throws \Doctrine\ODM\MongoDB\MongoDBException
|
||||||
*/
|
*/
|
||||||
#[Route(path: '/edit/delete/{uuid}', name: 'psc_shop_contact_backend_address_detail_delete')]
|
#[Route(path: '/addressdetail/delete/{uuid}', name: 'psc_shop_contact_backend_address_detail_delete')]
|
||||||
#[Template('@PSCShopContact/backend/addressdetail/delete.html.twig')]
|
#[Template('@PSCShopContact/backend/addressdetail/delete.html.twig')]
|
||||||
public function deleteAction(
|
public function deleteAction(
|
||||||
Request $request,
|
Request $request,
|
||||||
@ -199,9 +218,8 @@ class AddressDetailController extends AbstractController
|
|||||||
DocumentManager $documentManager,
|
DocumentManager $documentManager,
|
||||||
SessionInterface $session,
|
SessionInterface $session,
|
||||||
\PSC\System\SettingsBundle\Service\Shop $shopService,
|
\PSC\System\SettingsBundle\Service\Shop $shopService,
|
||||||
$uuid
|
$uuid,
|
||||||
) {
|
) {
|
||||||
|
|
||||||
/** @var ContactAddress $contactAddress */
|
/** @var ContactAddress $contactAddress */
|
||||||
$contactAddress = $entityManager
|
$contactAddress = $entityManager
|
||||||
->getRepository('PSC\Shop\EntityBundle\Entity\ContactAddress')
|
->getRepository('PSC\Shop\EntityBundle\Entity\ContactAddress')
|
||||||
@ -209,7 +227,7 @@ class AddressDetailController extends AbstractController
|
|||||||
/** @var \PSC\Shop\EntityBundle\Document\ContactAddress $contactDoc */
|
/** @var \PSC\Shop\EntityBundle\Document\ContactAddress $contactDoc */
|
||||||
$contactAddressDoc = $documentManager
|
$contactAddressDoc = $documentManager
|
||||||
->getRepository('PSC\Shop\EntityBundle\Document\ContactAddress')
|
->getRepository('PSC\Shop\EntityBundle\Document\ContactAddress')
|
||||||
->findOneBy(array('uid' => (string)$contactAddress->getUid()));
|
->findOneBy(array('uid' => (string) $contactAddress->getUid()));
|
||||||
/** @var \PSC\Shop\EntityBundle\Entity\Shop $selectedShop */
|
/** @var \PSC\Shop\EntityBundle\Entity\Shop $selectedShop */
|
||||||
$selectedShop = $shopService->getSelectedShop();
|
$selectedShop = $shopService->getSelectedShop();
|
||||||
$form = $this->createForm(DeleteType::class);
|
$form = $this->createForm(DeleteType::class);
|
||||||
@ -226,17 +244,24 @@ class AddressDetailController extends AbstractController
|
|||||||
}
|
}
|
||||||
|
|
||||||
$session->getFlashBag()->add('success', 'Address has been deleted!');
|
$session->getFlashBag()->add('success', 'Address has been deleted!');
|
||||||
$this->logService->createLogEntry($selectedShop, $this->getUser(), LogEntry::INFO, PSCShopContactBundle::class, $uuid, "Address has been deleted", ['contact' => $email]);
|
$this->logService->createLogEntry(
|
||||||
|
$selectedShop,
|
||||||
|
$this->getUser(),
|
||||||
|
LogEntry::INFO,
|
||||||
|
PSCShopContactBundle::class,
|
||||||
|
$uuid,
|
||||||
|
'Address has been deleted',
|
||||||
|
['contact' => $email],
|
||||||
|
);
|
||||||
return $this->redirectToRoute('psc_shop_contact_backend_edit', array('uuid' => $uuid));
|
return $this->redirectToRoute('psc_shop_contact_backend_edit', array('uuid' => $uuid));
|
||||||
}
|
}
|
||||||
return $this->redirectToRoute('psc_shop_contact_backend_edit', array('uuid' => $uuid));
|
return $this->redirectToRoute('psc_shop_contact_backend_edit', array('uuid' => $uuid));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
return array(
|
return array(
|
||||||
'address' => $contactAddress,
|
'address' => $contactAddress,
|
||||||
'contact' => $contactAddress->getContact(),
|
'contact' => $contactAddress->getContact(),
|
||||||
'form' => $form->createView()
|
'form' => $form->createView(),
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -557,6 +557,95 @@ class EditController extends AbstractController
|
|||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#[Route(path: '/edit/delete/{uuid}', name: 'psc_shop_contact_backend_delete')]
|
||||||
|
#[Template('@PSCShopContact/backend/edit/delete.html.twig')]
|
||||||
|
public function deleteAction(
|
||||||
|
Request $request,
|
||||||
|
\PSC\System\SettingsBundle\Service\Shop $shopService,
|
||||||
|
EntityManagerInterface $entityManager,
|
||||||
|
DocumentManager $documentManager,
|
||||||
|
SessionInterface $session,
|
||||||
|
$uuid = ""
|
||||||
|
) {
|
||||||
|
/** @var Contact $contact */
|
||||||
|
$contact = $entityManager
|
||||||
|
->getRepository('PSC\Shop\EntityBundle\Entity\Contact')
|
||||||
|
->findOneBy(array('uuid' => $uuid));
|
||||||
|
|
||||||
|
/** @var \PSC\Shop\EntityBundle\Entity\Shop $selectedShop */
|
||||||
|
$selectedShop = $shopService->getSelectedShop();
|
||||||
|
|
||||||
|
// Check if orders exist for this contact
|
||||||
|
$orderCount = $entityManager->getRepository('PSC\Shop\EntityBundle\Entity\Order')
|
||||||
|
->createQueryBuilder('o')
|
||||||
|
->select('count(o.uid)')
|
||||||
|
->leftJoin('o.contact', 'c')
|
||||||
|
->andWhere('c.uid = :contact_id')
|
||||||
|
->setParameter('contact_id', $contact->getUid())
|
||||||
|
->getQuery()
|
||||||
|
->getSingleScalarResult();
|
||||||
|
|
||||||
|
$hasOrders = (int)$orderCount > 0;
|
||||||
|
|
||||||
|
$form = $this->createForm(AnonymType::class);
|
||||||
|
$form->handleRequest($request);
|
||||||
|
|
||||||
|
if ($form->isSubmitted() && $form->isValid()) {
|
||||||
|
if (!$hasOrders && $form->getClickedButton()->getName() == 'yes') {
|
||||||
|
$email = $contact->getEmail();
|
||||||
|
|
||||||
|
// Remove contact addresses
|
||||||
|
$contactAddresses = $entityManager
|
||||||
|
->getRepository('PSC\Shop\EntityBundle\Entity\ContactAddress')
|
||||||
|
->findBy(array('contact' => $contact));
|
||||||
|
|
||||||
|
foreach ($contactAddresses as $contactAddress) {
|
||||||
|
$contactAddressDoc = $documentManager
|
||||||
|
->getRepository('PSC\Shop\EntityBundle\Document\ContactAddress')
|
||||||
|
->findOneBy(array('uid' => (string)$contactAddress->getUid()));
|
||||||
|
$entityManager->remove($contactAddress);
|
||||||
|
if ($contactAddressDoc) {
|
||||||
|
$documentManager->remove($contactAddressDoc);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Remove shop contacts
|
||||||
|
$shopContacts = $entityManager
|
||||||
|
->getRepository('PSC\Shop\EntityBundle\Entity\ShopContact')
|
||||||
|
->findBy(array('contact' => $contact));
|
||||||
|
|
||||||
|
foreach ($shopContacts as $shopContact) {
|
||||||
|
$entityManager->remove($shopContact);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Remove MongoDB document
|
||||||
|
$contactDoc = $documentManager
|
||||||
|
->getRepository('PSC\Shop\EntityBundle\Document\Contact')
|
||||||
|
->findOneBy(array('uid' => (string)$contact->getId()));
|
||||||
|
|
||||||
|
$entityManager->remove($contact);
|
||||||
|
$entityManager->flush();
|
||||||
|
|
||||||
|
if ($contactDoc) {
|
||||||
|
$documentManager->remove($contactDoc);
|
||||||
|
$documentManager->flush();
|
||||||
|
}
|
||||||
|
|
||||||
|
$session->getFlashBag()->add('success', 'Contact \'' . $email . '\' has been deleted!');
|
||||||
|
$this->logService->createLogEntry($selectedShop, $this->getUser(), LogEntry::INFO, PSCShopContactBundle::class, $email, "Contact deleted");
|
||||||
|
}
|
||||||
|
|
||||||
|
return $this->redirectToRoute('psc_shop_contact_backend_list');
|
||||||
|
}
|
||||||
|
|
||||||
|
return array(
|
||||||
|
'contact' => $contact,
|
||||||
|
'form' => $form->createView(),
|
||||||
|
'hasOrders' => $hasOrders,
|
||||||
|
'orderCount' => (int)$orderCount,
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @param array... $arrayCollections
|
* @param array... $arrayCollections
|
||||||
* @return ArrayCollection
|
* @return ArrayCollection
|
||||||
|
|||||||
@ -0,0 +1,9 @@
|
|||||||
|
customers: Kunden
|
||||||
|
delete: Löschen
|
||||||
|
deleteCustomer: Kunde löschen
|
||||||
|
Doyoureally: Sind Sie sicher, dass Sie diesen Kunden löschen möchten?
|
||||||
|
hasOrders: Dieser Kunde kann nicht gelöscht werden, da noch %count% Aufträge vorhanden sind.
|
||||||
|
cannotBeUndone: Diese Aktion kann nicht rückgängig gemacht werden
|
||||||
|
back: Zurück
|
||||||
|
yes: Ja
|
||||||
|
no: Nein
|
||||||
@ -0,0 +1,9 @@
|
|||||||
|
customers: Customer
|
||||||
|
delete: Delete
|
||||||
|
deleteCustomer: Delete customer
|
||||||
|
Doyoureally: Are you sure you want to delete this customer?
|
||||||
|
hasOrders: This customer cannot be deleted because there are still %count% orders.
|
||||||
|
cannotBeUndone: This action cannot be undone
|
||||||
|
back: Back
|
||||||
|
yes: Yes
|
||||||
|
no: No
|
||||||
@ -61,6 +61,7 @@ Extended: Erweitert
|
|||||||
Save: Speichern
|
Save: Speichern
|
||||||
|
|
||||||
Anonymize: Anonymisieren
|
Anonymize: Anonymisieren
|
||||||
|
delete: Löschen
|
||||||
back: Zurück
|
back: Zurück
|
||||||
|
|
||||||
Address: Adressen
|
Address: Adressen
|
||||||
|
|||||||
@ -55,6 +55,7 @@ Extended: Extended
|
|||||||
Save: Save
|
Save: Save
|
||||||
|
|
||||||
Anonymize: Anonymize
|
Anonymize: Anonymize
|
||||||
|
delete: Delete
|
||||||
back: Back
|
back: Back
|
||||||
|
|
||||||
Address: Address
|
Address: Address
|
||||||
|
|||||||
@ -14,5 +14,6 @@ virtual: Gast
|
|||||||
yes: Ja
|
yes: Ja
|
||||||
no: Nein
|
no: Nein
|
||||||
edit: Bearbeiten
|
edit: Bearbeiten
|
||||||
|
delete: Löschen
|
||||||
Loginname: Login/Email
|
Loginname: Login/Email
|
||||||
shops: Weitere Shops
|
shops: Weitere Shops
|
||||||
@ -14,5 +14,6 @@ virtual: Guest
|
|||||||
yes: Yes
|
yes: Yes
|
||||||
no: No
|
no: No
|
||||||
edit: To Edit
|
edit: To Edit
|
||||||
|
delete: Delete
|
||||||
Loginname: Login/Email
|
Loginname: Login/Email
|
||||||
shops: Shops
|
shops: Shops
|
||||||
@ -0,0 +1,108 @@
|
|||||||
|
{% extends 'backend_tailwind_base.html.twig' %}
|
||||||
|
{% form_theme form 'form_div_layout_tailwind.html.twig' %}
|
||||||
|
{% trans_default_domain 'core_contact_delete_contact' %}
|
||||||
|
|
||||||
|
{% block header %}
|
||||||
|
<div>
|
||||||
|
<h1 class="text-psc text-2xl font-medium flex flex-row gap-1">
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" class="h-8">
|
||||||
|
<path stroke-linecap="round" stroke-linejoin="round" d="M15.75 6a3.75 3.75 0 11-7.5 0 3.75 3.75 0 017.5 0zM4.501 20.118a7.5 7.5 0 0114.998 0A17.933 17.933 0 0112 21.75c-2.676 0-5.216-.584-7.499-1.632z" />
|
||||||
|
</svg>
|
||||||
|
{{'customers'|trans}} <span class="text-gray-500">{{'delete'|trans}}</span>
|
||||||
|
</h1>
|
||||||
|
</div>
|
||||||
|
<div class="flex flex-wrap items-center gap-4 justify-start shrink-0">
|
||||||
|
<a href="{{ path("psc_shop_contact_backend_edit", {uuid: contact.uuid}) }}" class="inline-flex items-center justify-center py-1 gap-1 font-medium rounded-md px-4 text-sm text-white shadow-lg bg-gray-500 hover:bg-gray-600 hover:ring-2 hover:ring-gray-500 hover:ring-offset-2 min-h-[2.25rem]">
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" class="button-icon">
|
||||||
|
<path stroke-linecap="round" stroke-linejoin="round" d="M10.5 19.5L3 12m0 0l7.5-7.5M3 12h18" />
|
||||||
|
</svg>
|
||||||
|
{{'back'|trans}}
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
|
{% endblock %}
|
||||||
|
|
||||||
|
{% block body %}
|
||||||
|
<div class="flex flex-col gap-6">
|
||||||
|
|
||||||
|
{# Delete Confirmation Card #}
|
||||||
|
<div class="rounded-md border border-red-200 bg-white shadow-lg dark:border-strokedark dark:bg-boxdark">
|
||||||
|
|
||||||
|
{# Card Header #}
|
||||||
|
<div class="border-b border-red-200 bg-red-50 px-6 py-4 dark:border-strokedark dark:bg-red-900/20">
|
||||||
|
<div class="flex items-center gap-3">
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" class="w-6 h-6 text-red-600">
|
||||||
|
<path stroke-linecap="round" stroke-linejoin="round" d="M12 9v3.75m-9.303 3.376c-.866 1.5.217 3.374 1.948 3.374h14.71c1.73 0 2.813-1.874 1.948-3.374L13.949 3.378c-.866-1.5-3.032-1.5-3.898 0L2.697 16.126zM12 15.75h.007v.008H12v-.008z" />
|
||||||
|
</svg>
|
||||||
|
<h3 class="text-xl font-medium text-red-900 dark:text-red-200">
|
||||||
|
{{'deleteCustomer'|trans}}?
|
||||||
|
</h3>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
{# Card Body #}
|
||||||
|
<div class="px-6 py-6">
|
||||||
|
<div class="space-y-4">
|
||||||
|
{% if hasOrders %}
|
||||||
|
<div class="p-4 bg-red-50 rounded-md border border-red-200 dark:bg-red-900/30 dark:border-red-800">
|
||||||
|
<div class="flex gap-3">
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" class="w-5 h-5 text-red-600 flex-shrink-0 mt-0.5">
|
||||||
|
<path stroke-linecap="round" stroke-linejoin="round" d="M18.364 18.364A9 9 0 005.636 5.636m12.728 12.728A9 9 0 015.636 5.636m12.728 12.728L5.636 5.636" />
|
||||||
|
</svg>
|
||||||
|
<p class="text-sm text-red-800 dark:text-red-200">
|
||||||
|
{{ 'hasOrders'|trans({'%count%': orderCount}) }}
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
{% else %}
|
||||||
|
<p class="text-gray-700 dark:text-bodydark">
|
||||||
|
{{'Doyoureally'|trans}}
|
||||||
|
</p>
|
||||||
|
{% endif %}
|
||||||
|
|
||||||
|
<div class="p-4 bg-gray-50 rounded-md border border-gray-200 dark:bg-boxdark-2 dark:border-strokedark">
|
||||||
|
<h5 class="text-lg font-medium text-gray-900 dark:text-bodydark">
|
||||||
|
{{ contact.username }}
|
||||||
|
</h5>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
{% if not hasOrders %}
|
||||||
|
<div class="p-4 bg-yellow-50 rounded-md border border-yellow-200">
|
||||||
|
<div class="flex gap-3">
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" class="w-5 h-5 text-yellow-600 flex-shrink-0 mt-0.5">
|
||||||
|
<path stroke-linecap="round" stroke-linejoin="round" d="M11.25 11.25l.041-.02a.75.75 0 011.063.852l-.708 2.836a.75.75 0 001.063.853l.041-.021M21 12a9 9 0 11-18 0 9 9 0 0118 0zm-9-3.75h.008v.008H12V8.25z" />
|
||||||
|
</svg>
|
||||||
|
<p class="text-sm text-yellow-800">
|
||||||
|
{{'cannotBeUndone'|trans}}.
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
{% endif %}
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
{# Card Footer with Actions #}
|
||||||
|
{% if not hasOrders %}
|
||||||
|
<div class="border-t border-gray-200 px-6 py-4 bg-gray-50 dark:border-strokedark dark:bg-boxdark-2">
|
||||||
|
{{ form_start(form) }}
|
||||||
|
<div class="flex flex-wrap items-center gap-3 justify-end">
|
||||||
|
{{ form_widget(form.no, {
|
||||||
|
attr: {
|
||||||
|
class: 'inline-flex items-center justify-center py-2 gap-2 font-medium rounded-md px-4 text-sm text-psc-600 border border-psc-500 bg-white hover:bg-gray-50 hover:ring-2 hover:ring-psc-500 hover:ring-offset-1 shadow-sm'
|
||||||
|
},
|
||||||
|
label: 'no'|trans
|
||||||
|
}) }}
|
||||||
|
{{ form_widget(form.yes, {
|
||||||
|
attr: {
|
||||||
|
class: 'inline-flex items-center justify-center py-2 gap-2 font-medium rounded-md px-4 text-sm text-white shadow-lg bg-red-500 hover:bg-red-600 hover:ring-2 hover:ring-red-500 hover:ring-offset-1'
|
||||||
|
},
|
||||||
|
label: 'yes'|trans
|
||||||
|
}) }}
|
||||||
|
</div>
|
||||||
|
{{ form_end(form) }}
|
||||||
|
</div>
|
||||||
|
{% endif %}
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
{% endblock %}
|
||||||
@ -21,6 +21,7 @@
|
|||||||
</h3>
|
</h3>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-xs-6 col-sm-6 col-md-6 col-lg-6 text-end">
|
<div class="col-xs-6 col-sm-6 col-md-6 col-lg-6 text-end">
|
||||||
|
<a href="{{ path("psc_shop_contact_backend_delete", {uuid: contact.uuid}) }}" class="btn btn-danger btn-sm"><i class="fa fa-lg fa-fw fa-trash"></i> {{ 'customer'|trans }} {{ 'delete'|trans }}</a>
|
||||||
<a href="{{ path("psc_shop_contact_backend_edit_anonymisieren", {uuid: contact.uuid}) }}" class="btn btn-default btn-sm"><i class="fa fa-lg fa-fw fa-building"></i> {{ 'customer'|trans }} {{ 'Anonymize'|trans }}</a>
|
<a href="{{ path("psc_shop_contact_backend_edit_anonymisieren", {uuid: contact.uuid}) }}" class="btn btn-default btn-sm"><i class="fa fa-lg fa-fw fa-building"></i> {{ 'customer'|trans }} {{ 'Anonymize'|trans }}</a>
|
||||||
<a href="{{ path("psc_shop_contact_backend_list") }}" class="btn btn-default btn-sm"><i class="fa fa-lg fa-fw fa-arrow-left"></i> {{ 'back'|trans }}</a>
|
<a href="{{ path("psc_shop_contact_backend_list") }}" class="btn btn-default btn-sm"><i class="fa fa-lg fa-fw fa-arrow-left"></i> {{ 'back'|trans }}</a>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@ -125,6 +125,11 @@
|
|||||||
<path stroke-linecap="round" stroke-linejoin="round" d="M16.862 4.487l1.687-1.688a1.875 1.875 0 112.652 2.652L10.582 16.07a4.5 4.5 0 01-1.897 1.13L6 18l.8-2.685a4.5 4.5 0 011.13-1.897l8.932-8.931zm0 0L19.5 7.125M18 14v4.75A2.25 2.25 0 0115.75 21H5.25A2.25 2.25 0 013 18.75V8.25A2.25 2.25 0 015.25 6H10" />
|
<path stroke-linecap="round" stroke-linejoin="round" d="M16.862 4.487l1.687-1.688a1.875 1.875 0 112.652 2.652L10.582 16.07a4.5 4.5 0 01-1.897 1.13L6 18l.8-2.685a4.5 4.5 0 011.13-1.897l8.932-8.931zm0 0L19.5 7.125M18 14v4.75A2.25 2.25 0 0115.75 21H5.25A2.25 2.25 0 013 18.75V8.25A2.25 2.25 0 015.25 6H10" />
|
||||||
</svg>
|
</svg>
|
||||||
</a>
|
</a>
|
||||||
|
<a href="{{ path("psc_shop_contact_backend_delete", {uuid: contact.uuid}) }}" title="{{'delete'|trans}}">
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" class="table-icon text-red-600 hover:text-red-700 dark:text-red-500 dark:hover:text-red-400">
|
||||||
|
<path stroke-linecap="round" stroke-linejoin="round" d="M14.74 9l-.346 9m-4.788 0L9.26 9m9.968-3.21c.342.052.682.107 1.022.166m-1.022-.165L18.16 19.673a2.25 2.25 0 01-2.244 2.077H8.084a2.25 2.25 0 01-2.244-2.077L4.772 5.79m14.456 0a48.108 48.108 0 00-3.478-.397m-12 .562c.34-.059.68-.114 1.022-.165m0 0a48.11 48.11 0 013.478-.397m7.5 0v-.916c0-1.18-.91-2.164-2.09-2.201a51.964 51.964 0 00-3.32 0c-1.18.037-2.09 1.022-2.09 2.201v.916m7.5 0a48.667 48.667 0 00-7.5 0" />
|
||||||
|
</svg>
|
||||||
|
</a>
|
||||||
</div>
|
</div>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|||||||
@ -22,7 +22,7 @@
|
|||||||
|
|
||||||
{% block body %}
|
{% block body %}
|
||||||
<div class="flex flex-col gap-6">
|
<div class="flex flex-col gap-6">
|
||||||
<div class="rounded-sm border bg-white px-7.5 py-6 shadow-lg dark:border-strokedark dark:bg-boxdark">
|
<div class="rounded-sm border bg-white px-6 py-6 shadow-lg dark:border-strokedark dark:bg-boxdark">
|
||||||
<div class="mb-6 px-7">
|
<div class="mb-6 px-7">
|
||||||
<h4 class="text-lg font-semibold text-gray-900 mb-4">{{'News'|trans}} {{'del'|trans}}?</h4>
|
<h4 class="text-lg font-semibold text-gray-900 mb-4">{{'News'|trans}} {{'del'|trans}}?</h4>
|
||||||
<div class="bg-yellow-50 border-l-4 border-yellow-400 p-4 mb-6">
|
<div class="bg-yellow-50 border-l-4 border-yellow-400 p-4 mb-6">
|
||||||
|
|||||||
@ -28,7 +28,7 @@
|
|||||||
<div class="rounded-md border border-red-200 bg-white shadow-lg dark:border-strokedark dark:bg-boxdark">
|
<div class="rounded-md border border-red-200 bg-white shadow-lg dark:border-strokedark dark:bg-boxdark">
|
||||||
|
|
||||||
{# Card Header #}
|
{# Card Header #}
|
||||||
<div class="border-b border-red-200 bg-red-50 px-7.5 py-4 dark:border-strokedark dark:bg-red-900/20">
|
<div class="border-b border-red-200 bg-red-50 px-6 py-4 dark:border-strokedark dark:bg-red-900/20">
|
||||||
<div class="flex items-center gap-3">
|
<div class="flex items-center gap-3">
|
||||||
<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" class="w-6 h-6 text-red-600">
|
<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" class="w-6 h-6 text-red-600">
|
||||||
<path stroke-linecap="round" stroke-linejoin="round" d="M12 9v3.75m-9.303 3.376c-.866 1.5.217 3.374 1.948 3.374h14.71c1.73 0 2.813-1.874 1.948-3.374L13.949 3.378c-.866-1.5-3.032-1.5-3.898 0L2.697 16.126zM12 15.75h.007v.008H12v-.008z" />
|
<path stroke-linecap="round" stroke-linejoin="round" d="M12 9v3.75m-9.303 3.376c-.866 1.5.217 3.374 1.948 3.374h14.71c1.73 0 2.813-1.874 1.948-3.374L13.949 3.378c-.866-1.5-3.032-1.5-3.898 0L2.697 16.126zM12 15.75h.007v.008H12v-.008z" />
|
||||||
@ -40,7 +40,7 @@
|
|||||||
</div>
|
</div>
|
||||||
|
|
||||||
{# Card Body #}
|
{# Card Body #}
|
||||||
<div class="px-7.5 py-6">
|
<div class="px-6 py-6">
|
||||||
<div class="space-y-4">
|
<div class="space-y-4">
|
||||||
<p class="text-gray-700 dark:text-bodydark">
|
<p class="text-gray-700 dark:text-bodydark">
|
||||||
{{'Are you sure you want to delete this payment method'|trans}}?
|
{{'Are you sure you want to delete this payment method'|trans}}?
|
||||||
@ -66,7 +66,7 @@
|
|||||||
</div>
|
</div>
|
||||||
|
|
||||||
{# Card Footer with Actions #}
|
{# Card Footer with Actions #}
|
||||||
<div class="border-t border-gray-200 px-7.5 py-4 bg-gray-50 dark:border-strokedark dark:bg-boxdark-2">
|
<div class="border-t border-gray-200 px-6 py-4 bg-gray-50 dark:border-strokedark dark:bg-boxdark-2">
|
||||||
{{ form_start(form) }}
|
{{ form_start(form) }}
|
||||||
<div class="flex flex-wrap items-center gap-3 justify-end">
|
<div class="flex flex-wrap items-center gap-3 justify-end">
|
||||||
{{ form_widget(form.no, {
|
{{ form_widget(form.no, {
|
||||||
|
|||||||
@ -28,7 +28,7 @@
|
|||||||
<div class="rounded-md border border-red-200 bg-white shadow-lg dark:border-strokedark dark:bg-boxdark">
|
<div class="rounded-md border border-red-200 bg-white shadow-lg dark:border-strokedark dark:bg-boxdark">
|
||||||
|
|
||||||
{# Card Header #}
|
{# Card Header #}
|
||||||
<div class="border-b border-red-200 bg-red-50 px-7.5 py-4 dark:border-strokedark dark:bg-red-900/20">
|
<div class="border-b border-red-200 bg-red-50 px-6 py-4 dark:border-strokedark dark:bg-red-900/20">
|
||||||
<div class="flex items-center gap-3">
|
<div class="flex items-center gap-3">
|
||||||
<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" class="w-6 h-6 text-red-600">
|
<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" class="w-6 h-6 text-red-600">
|
||||||
<path stroke-linecap="round" stroke-linejoin="round" d="M12 9v3.75m-9.303 3.376c-.866 1.5.217 3.374 1.948 3.374h14.71c1.73 0 2.813-1.874 1.948-3.374L13.949 3.378c-.866-1.5-3.032-1.5-3.898 0L2.697 16.126zM12 15.75h.007v.008H12v-.008z" />
|
<path stroke-linecap="round" stroke-linejoin="round" d="M12 9v3.75m-9.303 3.376c-.866 1.5.217 3.374 1.948 3.374h14.71c1.73 0 2.813-1.874 1.948-3.374L13.949 3.378c-.866-1.5-3.032-1.5-3.898 0L2.697 16.126zM12 15.75h.007v.008H12v-.008z" />
|
||||||
@ -40,7 +40,7 @@
|
|||||||
</div>
|
</div>
|
||||||
|
|
||||||
{# Card Body #}
|
{# Card Body #}
|
||||||
<div class="px-7.5 py-6">
|
<div class="px-6 py-6">
|
||||||
<div class="space-y-4">
|
<div class="space-y-4">
|
||||||
<p class="text-gray-700 dark:text-bodydark">
|
<p class="text-gray-700 dark:text-bodydark">
|
||||||
{{'Are you sure you want to delete this shipping method'|trans}}?
|
{{'Are you sure you want to delete this shipping method'|trans}}?
|
||||||
@ -66,7 +66,7 @@
|
|||||||
</div>
|
</div>
|
||||||
|
|
||||||
{# Card Footer with Actions #}
|
{# Card Footer with Actions #}
|
||||||
<div class="border-t border-gray-200 px-7.5 py-4 bg-gray-50 dark:border-strokedark dark:bg-boxdark-2">
|
<div class="border-t border-gray-200 px-6 py-4 bg-gray-50 dark:border-strokedark dark:bg-boxdark-2">
|
||||||
{{ form_start(form) }}
|
{{ form_start(form) }}
|
||||||
<div class="flex flex-wrap items-center gap-3 justify-end">
|
<div class="flex flex-wrap items-center gap-3 justify-end">
|
||||||
{{ form_widget(form.no, {
|
{{ form_widget(form.no, {
|
||||||
|
|||||||
@ -27,7 +27,7 @@
|
|||||||
{{ form_start(form, { 'attr': {'class': ''}}) }}
|
{{ form_start(form, { 'attr': {'class': ''}}) }}
|
||||||
<div class="rounded-md border border-red-200 bg-white shadow-lg dark:border-strokedark dark:bg-boxdark">
|
<div class="rounded-md border border-red-200 bg-white shadow-lg dark:border-strokedark dark:bg-boxdark">
|
||||||
{# Card Header #}
|
{# Card Header #}
|
||||||
<div class="border-b border-red-200 bg-red-50 px-7.5 py-4 dark:border-strokedark dark:bg-red-900/20">
|
<div class="border-b border-red-200 bg-red-50 px-6 py-4 dark:border-strokedark dark:bg-red-900/20">
|
||||||
<div class="flex items-center gap-3">
|
<div class="flex items-center gap-3">
|
||||||
<svg class="w-6 h-6 text-red-600 dark:text-red-500" xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor">
|
<svg class="w-6 h-6 text-red-600 dark:text-red-500" xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor">
|
||||||
<path stroke-linecap="round" stroke-linejoin="round" d="M12 9v3.75m-9.303 3.376c-.866 1.5.217 3.374 1.948 3.374h14.71c1.73 0 2.813-1.874 1.948-3.374L13.949 3.378c-.866-1.5-3.032-1.5-3.898 0L2.697 16.126zM12 15.75h.007v.008H12v-.008z" />
|
<path stroke-linecap="round" stroke-linejoin="round" d="M12 9v3.75m-9.303 3.376c-.866 1.5.217 3.374 1.948 3.374h14.71c1.73 0 2.813-1.874 1.948-3.374L13.949 3.378c-.866-1.5-3.032-1.5-3.898 0L2.697 16.126zM12 15.75h.007v.008H12v-.008z" />
|
||||||
@ -39,7 +39,7 @@
|
|||||||
</div>
|
</div>
|
||||||
|
|
||||||
{# Card Body #}
|
{# Card Body #}
|
||||||
<div class="px-7.5 py-6">
|
<div class="px-6 py-6">
|
||||||
<div class="p-4 bg-yellow-50 rounded-md border border-yellow-200 mb-4">
|
<div class="p-4 bg-yellow-50 rounded-md border border-yellow-200 mb-4">
|
||||||
<div class="flex gap-3">
|
<div class="flex gap-3">
|
||||||
<svg class="w-5 h-5 text-yellow-600 flex-shrink-0 mt-0.5" xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor">
|
<svg class="w-5 h-5 text-yellow-600 flex-shrink-0 mt-0.5" xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor">
|
||||||
@ -62,7 +62,7 @@
|
|||||||
</div>
|
</div>
|
||||||
|
|
||||||
{# Card Footer #}
|
{# Card Footer #}
|
||||||
<div class="border-t border-gray-200 px-7.5 py-4 bg-gray-50 dark:border-strokedark dark:bg-boxdark-2">
|
<div class="border-t border-gray-200 px-6 py-4 bg-gray-50 dark:border-strokedark dark:bg-boxdark-2">
|
||||||
<div class="flex justify-end gap-3">
|
<div class="flex justify-end gap-3">
|
||||||
{{ form_widget(form.no, {
|
{{ form_widget(form.no, {
|
||||||
attr: {
|
attr: {
|
||||||
|
|||||||
@ -23,7 +23,7 @@
|
|||||||
{% block body %}
|
{% block body %}
|
||||||
<div class="flex flex-col gap-6">
|
<div class="flex flex-col gap-6">
|
||||||
<div class="rounded-md border border-red-200 bg-white shadow-lg dark:border-strokedark dark:bg-boxdark">
|
<div class="rounded-md border border-red-200 bg-white shadow-lg dark:border-strokedark dark:bg-boxdark">
|
||||||
<div class="border-b border-red-200 bg-red-50 px-7.5 py-4 dark:border-strokedark dark:bg-red-900/20">
|
<div class="border-b border-red-200 bg-red-50 px-6 py-4 dark:border-strokedark dark:bg-red-900/20">
|
||||||
<div class="flex items-center gap-3">
|
<div class="flex items-center gap-3">
|
||||||
<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" class="w-6 h-6 text-red-600">
|
<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" class="w-6 h-6 text-red-600">
|
||||||
<path stroke-linecap="round" stroke-linejoin="round" d="M12 9v3.75m-9.303 3.376c-.866 1.5.217 3.374 1.948 3.374h14.71c1.73 0 2.813-1.874 1.948-3.374L13.949 3.378c-.866-1.5-3.032-1.5-3.898 0L2.697 16.126zM12 15.75h.007v.008H12v-.008z" />
|
<path stroke-linecap="round" stroke-linejoin="round" d="M12 9v3.75m-9.303 3.376c-.866 1.5.217 3.374 1.948 3.374h14.71c1.73 0 2.813-1.874 1.948-3.374L13.949 3.378c-.866-1.5-3.032-1.5-3.898 0L2.697 16.126zM12 15.75h.007v.008H12v-.008z" />
|
||||||
@ -32,7 +32,7 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="px-7.5 py-6">
|
<div class="px-6 py-6">
|
||||||
<p class="text-gray-700 dark:text-bodydark">
|
<p class="text-gray-700 dark:text-bodydark">
|
||||||
Soll der ausgewählte Hilfetext wirklich gelöscht werden?
|
Soll der ausgewählte Hilfetext wirklich gelöscht werden?
|
||||||
</p>
|
</p>
|
||||||
@ -55,7 +55,7 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="border-t border-gray-200 px-7.5 py-4 bg-gray-50 dark:border-strokedark dark:bg-boxdark-2">
|
<div class="border-t border-gray-200 px-6 py-4 bg-gray-50 dark:border-strokedark dark:bg-boxdark-2">
|
||||||
{{ form_start(form) }}
|
{{ form_start(form) }}
|
||||||
<div class="flex flex-wrap items-center gap-3 justify-end">
|
<div class="flex flex-wrap items-center gap-3 justify-end">
|
||||||
{{ form_widget(form.no, {
|
{{ form_widget(form.no, {
|
||||||
|
|||||||
@ -21,7 +21,7 @@
|
|||||||
|
|
||||||
{% block body %}
|
{% block body %}
|
||||||
<div class="flex flex-col gap-6">
|
<div class="flex flex-col gap-6">
|
||||||
<div class="rounded-sm border bg-white px-7.5 py-6 shadow-lg dark:border-strokedark dark:bg-boxdark">
|
<div class="rounded-sm border bg-white px-6 py-6 shadow-lg dark:border-strokedark dark:bg-boxdark">
|
||||||
<div class="mb-6 px-7">
|
<div class="mb-6 px-7">
|
||||||
<h4 class="text-lg font-semibold text-gray-900 mb-4">Papier löschen?</h4>
|
<h4 class="text-lg font-semibold text-gray-900 mb-4">Papier löschen?</h4>
|
||||||
<div class="bg-yellow-50 border-l-4 border-yellow-400 p-4 mb-6">
|
<div class="bg-yellow-50 border-l-4 border-yellow-400 p-4 mb-6">
|
||||||
|
|||||||
@ -1,4 +1,5 @@
|
|||||||
{% extends 'backend_tailwind_base.html.twig' %}
|
{% extends 'backend_tailwind_base.html.twig' %}
|
||||||
|
{% form_theme form 'form_div_layout_tailwind.html.twig' %}
|
||||||
|
|
||||||
{% block header %}
|
{% block header %}
|
||||||
<div>
|
<div>
|
||||||
@ -10,7 +11,7 @@
|
|||||||
</h1>
|
</h1>
|
||||||
</div>
|
</div>
|
||||||
<div class="flex flex-wrap items-center gap-4 justify-start shrink-0">
|
<div class="flex flex-wrap items-center gap-4 justify-start shrink-0">
|
||||||
<a href="{{ path("psc_system_status_list") }}" class="inline-flex items-center justify-center py-1 gap-1 font-medium rounded-sm px-4 text-sm text-white shadow-lg bg-psc-500 hover:bg-psc-600 hover:ring-2 hover:ring-psc-500 hover:ring-offset-2 min-h-[2.25rem]">
|
<a href="{{ path("psc_system_status_list") }}" class="inline-flex items-center justify-center py-1 gap-1 font-medium rounded-md px-4 text-sm text-white shadow-lg bg-gray-500 hover:bg-gray-600 hover:ring-2 hover:ring-gray-500 hover:ring-offset-2 min-h-[2.25rem]">
|
||||||
<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" class="button-icon">
|
<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" class="button-icon">
|
||||||
<path stroke-linecap="round" stroke-linejoin="round" d="M10.5 19.5 3 12m0 0 7.5-7.5M3 12h18" />
|
<path stroke-linecap="round" stroke-linejoin="round" d="M10.5 19.5 3 12m0 0 7.5-7.5M3 12h18" />
|
||||||
</svg>
|
</svg>
|
||||||
@ -21,45 +22,69 @@
|
|||||||
|
|
||||||
{% block body %}
|
{% block body %}
|
||||||
<div class="flex flex-col gap-6">
|
<div class="flex flex-col gap-6">
|
||||||
<div class="rounded-sm border bg-white px-7.5 py-6 shadow-lg dark:border-strokedark dark:bg-boxdark">
|
|
||||||
<div class="mb-6 px-7">
|
{# Delete Confirmation Card #}
|
||||||
<h4 class="text-lg font-semibold text-gray-900 mb-4">Status löschen?</h4>
|
<div class="rounded-md border border-red-200 bg-white shadow-lg dark:border-strokedark dark:bg-boxdark">
|
||||||
<div class="bg-yellow-50 border-l-4 border-yellow-400 p-4 mb-6">
|
|
||||||
<div class="flex">
|
{# Card Header #}
|
||||||
<div class="flex-shrink-0">
|
<div class="border-b border-red-200 bg-red-50 px-6 py-4 dark:border-strokedark dark:bg-red-900/20">
|
||||||
<svg class="h-5 w-5 text-yellow-400" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20" fill="currentColor">
|
<div class="flex items-center gap-3">
|
||||||
<path fill-rule="evenodd" d="M8.257 3.099c.765-1.36 2.722-1.36 3.486 0l5.58 9.92c.75 1.334-.213 2.98-1.742 2.98H4.42c-1.53 0-2.493-1.646-1.743-2.98l5.58-9.92zM11 13a1 1 0 11-2 0 1 1 0 012 0zm-1-8a1 1 0 00-1 1v3a1 1 0 002 0V6a1 1 0 00-1-1z" clip-rule="evenodd" />
|
<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" class="w-6 h-6 text-red-600">
|
||||||
|
<path stroke-linecap="round" stroke-linejoin="round" d="M12 9v3.75m-9.303 3.376c-.866 1.5.217 3.374 1.948 3.374h14.71c1.73 0 2.813-1.874 1.948-3.374L13.949 3.378c-.866-1.5-3.032-1.5-3.898 0L2.697 16.126zM12 15.75h.007v.008H12v-.008z" />
|
||||||
</svg>
|
</svg>
|
||||||
|
<h3 class="text-xl font-medium text-red-900 dark:text-red-200">
|
||||||
|
Status löschen?
|
||||||
|
</h3>
|
||||||
</div>
|
</div>
|
||||||
<div class="ml-3">
|
</div>
|
||||||
<p class="text-sm text-yellow-700 font-medium">
|
|
||||||
|
{# Card Body #}
|
||||||
|
<div class="px-6 py-6">
|
||||||
|
<div class="space-y-4">
|
||||||
|
<p class="text-gray-700 dark:text-bodydark">
|
||||||
|
Sind Sie sicher, dass Sie diesen Status löschen möchten?
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<div class="p-4 bg-gray-50 rounded-md border border-gray-200 dark:bg-boxdark-2 dark:border-strokedark">
|
||||||
|
<h5 class="text-lg font-medium text-gray-900 dark:text-bodydark">
|
||||||
{{ status.internalName }}
|
{{ status.internalName }}
|
||||||
|
</h5>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="p-4 bg-yellow-50 rounded-md border border-yellow-200">
|
||||||
|
<div class="flex gap-3">
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" class="w-5 h-5 text-yellow-600 flex-shrink-0 mt-0.5">
|
||||||
|
<path stroke-linecap="round" stroke-linejoin="round" d="M11.25 11.25l.041-.02a.75.75 0 011.063.852l-.708 2.836a.75.75 0 001.063.853l.041-.021M21 12a9 9 0 11-18 0 9 9 0 0118 0zm-9-3.75h.008v.008H12V8.25z" />
|
||||||
|
</svg>
|
||||||
|
<p class="text-sm text-yellow-800">
|
||||||
|
Diese Aktion kann nicht rückgängig gemacht werden.
|
||||||
</p>
|
</p>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
{{ form_start(form, {attr: {class: ''}}) }}
|
{# Card Footer with Actions #}
|
||||||
<div class="flex gap-4 px-7 items-center">
|
<div class="border-t border-gray-200 px-6 py-4 bg-gray-50 dark:border-strokedark dark:bg-boxdark-2">
|
||||||
<button type="submit" name="{{ form.yes.vars.full_name }}" value="1" class="inline-flex items-center justify-center py-2 gap-1 font-medium rounded-sm px-6 text-sm text-white shadow-lg bg-red-500 hover:bg-red-600 hover:ring-2 hover:ring-red-500 hover:ring-offset-2 min-h-[2.25rem]">
|
{{ form_start(form) }}
|
||||||
<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" class="button-icon">
|
<div class="flex flex-wrap items-center gap-3 justify-end">
|
||||||
<path stroke-linecap="round" stroke-linejoin="round" d="m14.74 9-.346 9m-4.788 0L9.26 9m9.968-3.21c.342.052.682.107 1.022.166m-1.022-.165L18.16 19.673a2.25 2.25 0 0 1-2.244 2.077H8.084a2.25 2.25 0 0 1-2.244-2.077L4.772 5.79m14.456 0a48.108 48.108 0 0 0-3.478-.397m-12 .562c.34-.059.68-.114 1.022-.165m0 0a48.11 48.11 0 0 1 3.478-.397m7.5 0v-.916c0-1.18-.91-2.164-2.09-2.201a51.964 51.964 0 0 0-3.32 0c-1.18.037-2.09 1.022-2.09 2.201v.916m7.5 0a48.667 48.667 0 0 0-7.5 0" />
|
{{ form_widget(form.no, {
|
||||||
</svg>
|
attr: {
|
||||||
Ja, löschen
|
class: 'inline-flex items-center justify-center py-2 gap-2 font-medium rounded-md px-4 text-sm text-psc-600 border border-psc-500 bg-white hover:bg-gray-50 hover:ring-2 hover:ring-psc-500 hover:ring-offset-1 shadow-sm'
|
||||||
</button>
|
},
|
||||||
<button type="submit" name="{{ form.no.vars.full_name }}" value="1" class="inline-flex items-center justify-center py-2 gap-1 font-medium rounded-sm px-6 text-sm text-gray-700 shadow-lg bg-white hover:bg-gray-50 hover:ring-2 hover:ring-gray-300 hover:ring-offset-2 min-h-[2.25rem] border border-gray-300">
|
label: 'Nein, abbrechen'
|
||||||
<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" class="button-icon">
|
}) }}
|
||||||
<path stroke-linecap="round" stroke-linejoin="round" d="M6 18 18 6M6 6l12 12" />
|
{{ form_widget(form.yes, {
|
||||||
</svg>
|
attr: {
|
||||||
Nein, abbrechen
|
class: 'inline-flex items-center justify-center py-2 gap-2 font-medium rounded-md px-4 text-sm text-white shadow-lg bg-red-500 hover:bg-red-600 hover:ring-2 hover:ring-red-500 hover:ring-offset-1'
|
||||||
</button>
|
},
|
||||||
</div>
|
label: 'Ja, löschen'
|
||||||
<div class="hidden">
|
}) }}
|
||||||
{{ form_widget(form.yes) }}
|
|
||||||
{{ form_widget(form.no) }}
|
|
||||||
</div>
|
</div>
|
||||||
{{ form_end(form) }}
|
{{ form_end(form) }}
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
{% endblock %}
|
{% endblock %}
|
||||||
@ -21,10 +21,10 @@
|
|||||||
|
|
||||||
{% block body %}
|
{% block body %}
|
||||||
<div class="flex flex-col gap-6">
|
<div class="flex flex-col gap-6">
|
||||||
<div class="rounded-sm border bg-white px-7.5 py-6 shadow-lg dark:border-strokedark dark:bg-boxdark">
|
<div class="rounded-sm border bg-white px-6 py-6 shadow-lg dark:border-strokedark dark:bg-boxdark">
|
||||||
<h2 class="ml-4 text-psc text-xl font-medium mb-4">Auftragsstatus</h2>
|
<h2 class="ml-4 text-psc text-xl font-medium mb-4">Auftragsstatus</h2>
|
||||||
<div class="">
|
<div class="">
|
||||||
<div class="w-full grid grid-cols-5 border-t border-stroke px-4 bg-slate-100 py-4.5 dark:border-strokedark sm:grid-cols-10 md:px-6 2xl:px-7.5">
|
<div class="w-full grid grid-cols-5 border-t border-stroke px-4 bg-slate-100 py-4.5 dark:border-strokedark sm:grid-cols-10 md:px-6 2xl:px-6">
|
||||||
<div class="col-span-1 px-2 py-3">
|
<div class="col-span-1 px-2 py-3">
|
||||||
<p class="font-medium">Code</p>
|
<p class="font-medium">Code</p>
|
||||||
</div>
|
</div>
|
||||||
@ -40,7 +40,7 @@
|
|||||||
<div class="col-span-1 sm:col-span-2 px-2 py-3"></div>
|
<div class="col-span-1 sm:col-span-2 px-2 py-3"></div>
|
||||||
</div>
|
</div>
|
||||||
{% for status in statusOrder %}
|
{% for status in statusOrder %}
|
||||||
<div class="w-full grid grid-cols-5 border-t border-stroke px-4 py-4.5 dark:border-strokedark sm:grid-cols-10 md:px-6 2xl:px-7.5">
|
<div class="w-full grid grid-cols-5 border-t border-stroke px-4 py-4.5 dark:border-strokedark sm:grid-cols-10 md:px-6 2xl:px-6">
|
||||||
<div class="col-span-1 px-2 py-3">{{ status.code }}</div>
|
<div class="col-span-1 px-2 py-3">{{ status.code }}</div>
|
||||||
<div class="col-span-1 px-2 py-3">
|
<div class="col-span-1 px-2 py-3">
|
||||||
{% if status.enable %}
|
{% if status.enable %}
|
||||||
@ -52,13 +52,13 @@
|
|||||||
<div class="col-span-2 sm:col-span-3 px-2 py-3">{{ status.internalName }}</div>
|
<div class="col-span-2 sm:col-span-3 px-2 py-3">{{ status.internalName }}</div>
|
||||||
<div class="hidden sm:block sm:col-span-3 px-2 py-3">{{ status.externalName }}</div>
|
<div class="hidden sm:block sm:col-span-3 px-2 py-3">{{ status.externalName }}</div>
|
||||||
<div class="col-span-1 sm:col-span-2 px-2 py-3 text-end flex flex-row gap-2 justify-end">
|
<div class="col-span-1 sm:col-span-2 px-2 py-3 text-end flex flex-row gap-2 justify-end">
|
||||||
<a href="{{ path("psc_system_status_edit", {uuid: status.id}) }}" class="">
|
<a href="{{ path("psc_system_status_edit", {uuid: status.id}) }}" title="Bearbeiten">
|
||||||
<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" class="table-icon">
|
<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" class="table-icon text-green-600 hover:text-green-700 dark:text-green-500 dark:hover:text-green-400">
|
||||||
<path stroke-linecap="round" stroke-linejoin="round" d="m16.862 4.487 1.687-1.688a1.875 1.875 0 1 1 2.652 2.652L10.582 16.07a4.5 4.5 0 0 1-1.897 1.13L6 18l.8-2.685a4.5 4.5 0 0 1 1.13-1.897l8.932-8.931Zm0 0L19.5 7.125M18 14v4.75A2.25 2.25 0 0 1 15.75 21H5.25A2.25 2.25 0 0 1 3 18.75V8.25A2.25 2.25 0 0 1 5.25 6H10" />
|
<path stroke-linecap="round" stroke-linejoin="round" d="m16.862 4.487 1.687-1.688a1.875 1.875 0 1 1 2.652 2.652L10.582 16.07a4.5 4.5 0 0 1-1.897 1.13L6 18l.8-2.685a4.5 4.5 0 0 1 1.13-1.897l8.932-8.931Zm0 0L19.5 7.125M18 14v4.75A2.25 2.25 0 0 1 15.75 21H5.25A2.25 2.25 0 0 1 3 18.75V8.25A2.25 2.25 0 0 1 5.25 6H10" />
|
||||||
</svg>
|
</svg>
|
||||||
</a>
|
</a>
|
||||||
<a href="{{ path("psc_system_status_delete", {uuid: status.id}) }}" class="">
|
<a href="{{ path("psc_system_status_delete", {uuid: status.id}) }}" title="Löschen">
|
||||||
<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" class="table-icon">
|
<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" class="table-icon text-red-600 hover:text-red-700 dark:text-red-500 dark:hover:text-red-400">
|
||||||
<path stroke-linecap="round" stroke-linejoin="round" d="m14.74 9-.346 9m-4.788 0L9.26 9m9.968-3.21c.342.052.682.107 1.022.166m-1.022-.165L18.16 19.673a2.25 2.25 0 0 1-2.244 2.077H8.084a2.25 2.25 0 0 1-2.244-2.077L4.772 5.79m14.456 0a48.108 48.108 0 0 0-3.478-.397m-12 .562c.34-.059.68-.114 1.022-.165m0 0a48.11 48.11 0 0 1 3.478-.397m7.5 0v-.916c0-1.18-.91-2.164-2.09-2.201a51.964 51.964 0 0 0-3.32 0c-1.18.037-2.09 1.022-2.09 2.201v.916m7.5 0a48.667 48.667 0 0 0-7.5 0" />
|
<path stroke-linecap="round" stroke-linejoin="round" d="m14.74 9-.346 9m-4.788 0L9.26 9m9.968-3.21c.342.052.682.107 1.022.166m-1.022-.165L18.16 19.673a2.25 2.25 0 0 1-2.244 2.077H8.084a2.25 2.25 0 0 1-2.244-2.077L4.772 5.79m14.456 0a48.108 48.108 0 0 0-3.478-.397m-12 .562c.34-.059.68-.114 1.022-.165m0 0a48.11 48.11 0 0 1 3.478-.397m7.5 0v-.916c0-1.18-.91-2.164-2.09-2.201a51.964 51.964 0 0 0-3.32 0c-1.18.037-2.09 1.022-2.09 2.201v.916m7.5 0a48.667 48.667 0 0 0-7.5 0" />
|
||||||
</svg>
|
</svg>
|
||||||
</a>
|
</a>
|
||||||
@ -68,10 +68,10 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="rounded-sm border bg-white px-7.5 py-6 shadow-lg dark:border-strokedark dark:bg-boxdark">
|
<div class="rounded-sm border bg-white px-6 py-6 shadow-lg dark:border-strokedark dark:bg-boxdark">
|
||||||
<h2 class="ml-4 text-psc text-xl font-medium mb-4">Positionsstatus</h2>
|
<h2 class="ml-4 text-psc text-xl font-medium mb-4">Positionsstatus</h2>
|
||||||
<div class="">
|
<div class="">
|
||||||
<div class="w-full grid grid-cols-5 border-t border-stroke px-4 bg-slate-100 py-4.5 dark:border-strokedark sm:grid-cols-10 md:px-6 2xl:px-7.5">
|
<div class="w-full grid grid-cols-5 border-t border-stroke px-4 bg-slate-100 py-4.5 dark:border-strokedark sm:grid-cols-10 md:px-6 2xl:px-6">
|
||||||
<div class="col-span-1 px-2 py-3">
|
<div class="col-span-1 px-2 py-3">
|
||||||
<p class="font-medium">Code</p>
|
<p class="font-medium">Code</p>
|
||||||
</div>
|
</div>
|
||||||
@ -87,7 +87,7 @@
|
|||||||
<div class="col-span-1 sm:col-span-2 px-2 py-3"></div>
|
<div class="col-span-1 sm:col-span-2 px-2 py-3"></div>
|
||||||
</div>
|
</div>
|
||||||
{% for status in statusPosition %}
|
{% for status in statusPosition %}
|
||||||
<div class="w-full grid grid-cols-5 border-t border-stroke px-4 py-4.5 dark:border-strokedark sm:grid-cols-10 md:px-6 2xl:px-7.5">
|
<div class="w-full grid grid-cols-5 border-t border-stroke px-4 py-4.5 dark:border-strokedark sm:grid-cols-10 md:px-6 2xl:px-6">
|
||||||
<div class="col-span-1 px-2 py-3">{{ status.code }}</div>
|
<div class="col-span-1 px-2 py-3">{{ status.code }}</div>
|
||||||
<div class="col-span-1 px-2 py-3">
|
<div class="col-span-1 px-2 py-3">
|
||||||
{% if status.enable %}
|
{% if status.enable %}
|
||||||
@ -99,13 +99,13 @@
|
|||||||
<div class="col-span-2 sm:col-span-3 px-2 py-3">{{ status.internalName }}</div>
|
<div class="col-span-2 sm:col-span-3 px-2 py-3">{{ status.internalName }}</div>
|
||||||
<div class="hidden sm:block sm:col-span-3 px-2 py-3">{{ status.externalName }}</div>
|
<div class="hidden sm:block sm:col-span-3 px-2 py-3">{{ status.externalName }}</div>
|
||||||
<div class="col-span-1 sm:col-span-2 px-2 py-3 text-end flex flex-row gap-2 justify-end">
|
<div class="col-span-1 sm:col-span-2 px-2 py-3 text-end flex flex-row gap-2 justify-end">
|
||||||
<a href="{{ path("psc_system_status_edit", {uuid: status.id}) }}" class="">
|
<a href="{{ path("psc_system_status_edit", {uuid: status.id}) }}" title="Bearbeiten">
|
||||||
<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" class="table-icon">
|
<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" class="table-icon text-green-600 hover:text-green-700 dark:text-green-500 dark:hover:text-green-400">
|
||||||
<path stroke-linecap="round" stroke-linejoin="round" d="m16.862 4.487 1.687-1.688a1.875 1.875 0 1 1 2.652 2.652L10.582 16.07a4.5 4.5 0 0 1-1.897 1.13L6 18l.8-2.685a4.5 4.5 0 0 1 1.13-1.897l8.932-8.931Zm0 0L19.5 7.125M18 14v4.75A2.25 2.25 0 0 1 15.75 21H5.25A2.25 2.25 0 0 1 3 18.75V8.25A2.25 2.25 0 0 1 5.25 6H10" />
|
<path stroke-linecap="round" stroke-linejoin="round" d="m16.862 4.487 1.687-1.688a1.875 1.875 0 1 1 2.652 2.652L10.582 16.07a4.5 4.5 0 0 1-1.897 1.13L6 18l.8-2.685a4.5 4.5 0 0 1 1.13-1.897l8.932-8.931Zm0 0L19.5 7.125M18 14v4.75A2.25 2.25 0 0 1 15.75 21H5.25A2.25 2.25 0 0 1 3 18.75V8.25A2.25 2.25 0 0 1 5.25 6H10" />
|
||||||
</svg>
|
</svg>
|
||||||
</a>
|
</a>
|
||||||
<a href="{{ path("psc_system_status_delete", {uuid: status.id}) }}" class="">
|
<a href="{{ path("psc_system_status_delete", {uuid: status.id}) }}" title="Löschen">
|
||||||
<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" class="table-icon">
|
<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" class="table-icon text-red-600 hover:text-red-700 dark:text-red-500 dark:hover:text-red-400">
|
||||||
<path stroke-linecap="round" stroke-linejoin="round" d="m14.74 9-.346 9m-4.788 0L9.26 9m9.968-3.21c.342.052.682.107 1.022.166m-1.022-.165L18.16 19.673a2.25 2.25 0 0 1-2.244 2.077H8.084a2.25 2.25 0 0 1-2.244-2.077L4.772 5.79m14.456 0a48.108 48.108 0 0 0-3.478-.397m-12 .562c.34-.059.68-.114 1.022-.165m0 0a48.11 48.11 0 0 1 3.478-.397m7.5 0v-.916c0-1.18-.91-2.164-2.09-2.201a51.964 51.964 0 0 0-3.32 0c-1.18.037-2.09 1.022-2.09 2.201v.916m7.5 0a48.667 48.667 0 0 0-7.5 0" />
|
<path stroke-linecap="round" stroke-linejoin="round" d="m14.74 9-.346 9m-4.788 0L9.26 9m9.968-3.21c.342.052.682.107 1.022.166m-1.022-.165L18.16 19.673a2.25 2.25 0 0 1-2.244 2.077H8.084a2.25 2.25 0 0 1-2.244-2.077L4.772 5.79m14.456 0a48.108 48.108 0 0 0-3.478-.397m-12 .562c.34-.059.68-.114 1.022-.165m0 0a48.11 48.11 0 0 1 3.478-.397m7.5 0v-.916c0-1.18-.91-2.164-2.09-2.201a51.964 51.964 0 0 0-3.32 0c-1.18.037-2.09 1.022-2.09 2.201v.916m7.5 0a48.667 48.667 0 0 0-7.5 0" />
|
||||||
</svg>
|
</svg>
|
||||||
</a>
|
</a>
|
||||||
|
|||||||
@ -1,8 +1,12 @@
|
|||||||
info:
|
info:
|
||||||
datum: 19.03.2026
|
datum: 20.03.2026
|
||||||
release: 2.3.4
|
release: 2.3.5
|
||||||
|
|
||||||
changelog:
|
changelog:
|
||||||
|
- version: 2.3.5
|
||||||
|
datum: 20.03.2026
|
||||||
|
changes:
|
||||||
|
- "Löschen von Kunden wenn kein Afträge da."
|
||||||
- version: 2.3.4
|
- version: 2.3.4
|
||||||
datum: 19.03.2026
|
datum: 19.03.2026
|
||||||
changes:
|
changes:
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user