- PaymentIntent instead of Checkout Session on connected account - Stripe Elements Payment Element with neo-brutalist theme - stripe-payment.js module with waitForStripe() for deferred loading - No inline scripts (CSP compliant), data attributes on container - Add order_number (YYYY-MM-DD-increment) to BilletBuyer - Payment page redesign: full-width vertical layout with event info, buyer info, billet listing with images/descriptions, payment form - CSP: add js.stripe.com to script-src, api.stripe.com to connect-src - Add stripe_pk parameter in services.yaml - Add head block to base.html.twig for page-specific scripts Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
29 lines
811 B
PHP
29 lines
811 B
PHP
<?php
|
|
|
|
declare(strict_types=1);
|
|
|
|
namespace DoctrineMigrations;
|
|
|
|
use Doctrine\DBAL\Schema\Schema;
|
|
use Doctrine\Migrations\AbstractMigration;
|
|
|
|
final class Version20260321210000 extends AbstractMigration
|
|
{
|
|
public function getDescription(): string
|
|
{
|
|
return 'Add order_number to billet_buyer';
|
|
}
|
|
|
|
public function up(Schema $schema): void
|
|
{
|
|
$this->addSql('ALTER TABLE billet_buyer ADD COLUMN IF NOT EXISTS order_number VARCHAR(20) DEFAULT NULL');
|
|
$this->addSql('CREATE UNIQUE INDEX IF NOT EXISTS UNIQ_BB_ORDER_NUMBER ON billet_buyer (order_number)');
|
|
}
|
|
|
|
public function down(Schema $schema): void
|
|
{
|
|
$this->addSql('DROP INDEX IF EXISTS UNIQ_BB_ORDER_NUMBER');
|
|
$this->addSql('ALTER TABLE billet_buyer DROP COLUMN IF EXISTS order_number');
|
|
}
|
|
}
|