diff --git a/app/config/packages/backoffice_menu.yaml b/app/config/packages/backoffice_menu.yaml
index 86a668798..169a34b8f 100644
--- a/app/config/packages/backoffice_menu.yaml
+++ b/app/config/packages/backoffice_menu.yaml
@@ -131,6 +131,8 @@ parameters:
url: '/admin/event/tickets'
extra_routes:
- admin_event_ticket_list
+ - admin_event_ticket_add
+ - admin_event_ticket_edit
forum_pending_bankwires:
nom: 'Virements en attente'
niveau: 'ROLE_ADMIN'
diff --git a/app/config/routing/admin_event.yml b/app/config/routing/admin_event.yml
index ef268bfb0..6c9d756b3 100644
--- a/app/config/routing/admin_event.yml
+++ b/app/config/routing/admin_event.yml
@@ -137,6 +137,5 @@ admin_event_sessions_delete:
requirements:
id: \d+
-admin_event_ticket_list:
- path: /tickets
- defaults: { _controller: AppBundle\Controller\Admin\Event\Ticket\IndexAction }
\ No newline at end of file
+admin_event_ticket:
+ resource: "admin_event_ticket.yml"
diff --git a/app/config/routing/admin_event_ticket.yml b/app/config/routing/admin_event_ticket.yml
new file mode 100644
index 000000000..77a98ecea
--- /dev/null
+++ b/app/config/routing/admin_event_ticket.yml
@@ -0,0 +1,19 @@
+admin_event_ticket_list:
+ path: /tickets
+ defaults: { _controller: AppBundle\Controller\Admin\Event\Ticket\IndexAction }
+
+admin_event_ticket_edit:
+ path: /tickets/{id}
+ requirements:
+ id: \d+
+ defaults: { _controller: AppBundle\Controller\Admin\Event\Ticket\EditAction }
+
+admin_event_ticket_add:
+ path: /tickets/add
+ defaults: { _controller: AppBundle\Controller\Admin\Event\Ticket\AddAction }
+
+admin_event_ticket_delete:
+ path: /tickets/delete/{id}
+ requirements:
+ id: \d+
+ defaults: { _controller: AppBundle\Controller\Admin\Event\Ticket\DeleteAction }
\ No newline at end of file
diff --git a/compose.yml b/compose.yml
index 32903be5e..d9fbecdc2 100644
--- a/compose.yml
+++ b/compose.yml
@@ -7,6 +7,8 @@ services:
MYSQL_USER: afup
MYSQL_PASSWORD: afup
MYSQL_DATABASE: web
+ ports:
+ - "3606:3306"
volumes:
- ./data/mysql:/var/lib/mysql
diff --git a/db/seeds/Inscriptions.php b/db/seeds/Inscriptions.php
index e97075f92..982741725 100644
--- a/db/seeds/Inscriptions.php
+++ b/db/seeds/Inscriptions.php
@@ -15,8 +15,8 @@ public function run(): void
[
'date' => time(),
'reference' => 'REF-TEST-001',
- 'type_inscription' => Ticket::TYPE_2_DAYS,
- 'montant' => $GLOBALS['AFUP_Tarifs_Forum'][Ticket::TYPE_2_DAYS],
+ 'type_inscription' => Tarif::TYPE_2_DAYS['id'],
+ 'montant' => Tarif::TYPE_2_DAYS['default_price'],
'civilite' => 'Mme',
'nom' => 'Michu',
'prenom' => 'Bernadette',
@@ -32,8 +32,8 @@ public function run(): void
[
'date' => (new \DateTime("2023-06-25"))->getTimestamp(),
'reference' => 'REF-TEST-002',
- 'type_inscription' => Ticket::TYPE_2_DAYS,
- 'montant' => $GLOBALS['AFUP_Tarifs_Forum'][Ticket::TYPE_2_DAYS],
+ 'type_inscription' => Tarif::TYPE_2_DAYS['id'],
+ 'montant' => Tarif::TYPE_2_DAYS['default_price'],
'civilite' => 'Mme',
'nom' => 'Jean',
'prenom' => 'Maurice',
@@ -49,8 +49,8 @@ public function run(): void
[
'date' => (new \DateTime("2024-01-02"))->getTimestamp(),
'reference' => 'REF-TEST-003',
- 'type_inscription' => Ticket::TYPE_2_DAYS,
- 'montant' => $GLOBALS['AFUP_Tarifs_Forum'][Ticket::TYPE_2_DAYS],
+ 'type_inscription' => Tarif::TYPE_2_DAYS['id'],
+ 'montant' => Tarif::TYPE_2_DAYS['default_price'],
'civilite' => 'Mme',
'nom' => 'Kirk',
'prenom' => 'James Tiberius',
@@ -66,8 +66,8 @@ public function run(): void
[
'date' => (new \DateTime("2024-01-02"))->getTimestamp(),
'reference' => 'REF-TEST-004',
- 'type_inscription' => Ticket::TYPE_2_DAYS_AFUP,
- 'montant' => $GLOBALS['AFUP_Tarifs_Forum'][Ticket::TYPE_2_DAYS_AFUP],
+ 'type_inscription' => Tarif::TYPE_2_DAYS_AFUP['id'],
+ 'montant' => Tarif::TYPE_2_DAYS_AFUP['default_price'],
'civilite' => 'Mme',
'nom' => 'Sans',
'prenom' => 'Cotisation',
@@ -83,8 +83,8 @@ public function run(): void
[
'date' => time(),
'reference' => 'REF-TEST-005',
- 'type_inscription' => Ticket::TYPE_2_DAYS_AFUP,
- 'montant' => $GLOBALS['AFUP_Tarifs_Forum'][Ticket::TYPE_2_DAYS_AFUP],
+ 'type_inscription' => Tarif::TYPE_2_DAYS_AFUP['id'],
+ 'montant' => Tarif::TYPE_2_DAYS_AFUP['default_price'],
'civilite' => 'M',
'nom' => 'Personne',
'prenom' => 'Paul',
@@ -101,8 +101,8 @@ public function run(): void
[
'date' => time(),
'reference' => 'REF-TEST-006',
- 'type_inscription' => Ticket::TYPE_2_DAYS_AFUP,
- 'montant' => $GLOBALS['AFUP_Tarifs_Forum'][Ticket::TYPE_2_DAYS_AFUP],
+ 'type_inscription' => Tarif::TYPE_2_DAYS_AFUP['id'],
+ 'montant' => Tarif::TYPE_2_DAYS_AFUP['default_price'],
'civilite' => 'M',
'nom' => 'Maurice',
'prenom' => 'Jean',
@@ -119,8 +119,8 @@ public function run(): void
[
'date' => time(),
'reference' => 'REF-TEST-007',
- 'type_inscription' => Ticket::TYPE_2_DAYS,
- 'montant' => $GLOBALS['AFUP_Tarifs_Forum'][Ticket::TYPE_2_DAYS],
+ 'type_inscription' => Tarif::TYPE_2_DAYS['id'],
+ 'montant' => Tarif::TYPE_2_DAYS['default_price'],
'civilite' => 'Mme',
'nom' => 'Annulé',
'prenom' => 'Lepaiement',
@@ -136,8 +136,8 @@ public function run(): void
[
'date' => time(),
'reference' => 'REF-TEST-008',
- 'type_inscription' => Ticket::TYPE_ORGANIZATION,
- 'montant' => $GLOBALS['AFUP_Tarifs_Forum'][Ticket::TYPE_ORGANIZATION],
+ 'type_inscription' => Tarif::TYPE_ORGANIZATION['id'],
+ 'montant' => Tarif::TYPE_ORGANIZATION['default_price'],
'civilite' => 'Mme',
'nom' => 'Super',
'prenom' => 'Bénévole',
@@ -164,7 +164,7 @@ public function run(): void
$data = [
[
'reference' => 'REF-TEST-001',
- 'montant' => $GLOBALS['AFUP_Tarifs_Forum'][Ticket::TYPE_2_DAYS],
+ 'montant' => Tarif::TYPE_2_DAYS['default_price'],
'date_reglement' => time(),
'type_reglement' => Ticket::PAYMENT_CREDIT_CARD,
'email' => 'bernadette@yahoo.fr',
@@ -184,7 +184,7 @@ public function run(): void
],
[
'reference' => 'REF-TEST-002',
- 'montant' => $GLOBALS['AFUP_Tarifs_Forum'][Ticket::TYPE_2_DAYS],
+ 'montant' => Tarif::TYPE_2_DAYS['default_price'],
'date_reglement' => (new \DateTime("2023-06-25"))->getTimestamp(),
'type_reglement' => Ticket::PAYMENT_CHEQUE,
'email' => 'jean@yahoo.fr',
@@ -203,7 +203,7 @@ public function run(): void
],
[
'reference' => 'REF-TEST-003',
- 'montant' => $GLOBALS['AFUP_Tarifs_Forum'][Ticket::TYPE_2_DAYS],
+ 'montant' => Tarif::TYPE_2_DAYS['default_price'],
'date_reglement' => (new \DateTime("2024-01-02"))->getTimestamp(),
'type_reglement' => Ticket::PAYMENT_BANKWIRE,
'email' => 'james@starfleet.fr',
@@ -222,7 +222,7 @@ public function run(): void
],
[
'reference' => 'REF-TEST-004',
- 'montant' => $GLOBALS['AFUP_Tarifs_Forum'][Ticket::TYPE_2_DAYS_AFUP],
+ 'montant' => Tarif::TYPE_2_DAYS_AFUP['default_price'],
'date_reglement' => (new \DateTime("2024-01-02"))->getTimestamp(),
'type_reglement' => Ticket::PAYMENT_CREDIT_CARD,
'email' => 'sans@cotisation.fr',
@@ -241,7 +241,7 @@ public function run(): void
],
[
'reference' => 'REF-TEST-005',
- 'montant' => $GLOBALS['AFUP_Tarifs_Forum'][Ticket::TYPE_2_DAYS_AFUP],
+ 'montant' => Tarif::TYPE_2_DAYS_AFUP['default_price'],
'date_reglement' => (new \DateTime("2024-01-02"))->getTimestamp(),
'type_reglement' => Ticket::PAYMENT_CREDIT_CARD,
'nom' => 'Personne',
@@ -260,7 +260,7 @@ public function run(): void
],
[
'reference' => 'REF-TEST-006',
- 'montant' => $GLOBALS['AFUP_Tarifs_Forum'][Ticket::TYPE_2_DAYS_AFUP],
+ 'montant' => Tarif::TYPE_2_DAYS_AFUP['default_price'],
'date_reglement' => (new \DateTime("2024-01-02"))->getTimestamp(),
'type_reglement' => Ticket::PAYMENT_CREDIT_CARD,
'nom' => 'Maurice',
@@ -279,7 +279,7 @@ public function run(): void
],
[
'reference' => 'REF-TEST-007',
- 'montant' => $GLOBALS['AFUP_Tarifs_Forum'][Ticket::TYPE_2_DAYS],
+ 'montant' => Tarif::TYPE_2_DAYS['default_price'],
'date_reglement' => time(),
'type_reglement' => Ticket::PAYMENT_CREDIT_CARD,
'nom' => 'Annulé',
@@ -298,7 +298,7 @@ public function run(): void
],
[
'reference' => 'REF-TEST-008',
- 'montant' => $GLOBALS['AFUP_Tarifs_Forum'][Ticket::TYPE_ORGANIZATION],
+ 'montant' => Tarif::TYPE_ORGANIZATION['default_price'],
'date_reglement' => time(),
'type_reglement' => Ticket::PAYMENT_NONE,
'societe' => 'AFUP',
diff --git a/db/seeds/Tarif.php b/db/seeds/Tarif.php
index ba4cf1047..78f88e33e 100644
--- a/db/seeds/Tarif.php
+++ b/db/seeds/Tarif.php
@@ -6,94 +6,595 @@
class Tarif extends AbstractSeed
{
+ public const TYPE_2_DAYS = [
+ 'id' => 2,
+ 'technical_name' => 'AFUP_FORUM_2_JOURNEES',
+ 'pretty_name' => '2 Jours',
+ 'public' => true,
+ 'members_only' => false,
+ 'default_price' => 250.0,
+ 'active' => true,
+ 'day' => 'one,two',
+ 'cfp_submitter_only' => false,
+ ];
+ public const TYPE_2_DAYS_AFUP = [
+ 'id' => 3,
+ 'technical_name' => 'AFUP_FORUM_2_JOURNEES_AFUP',
+ 'pretty_name' => '2 Jours AFUP',
+ 'public' => true,
+ 'members_only' => true,
+ 'default_price' => 150.0,
+ 'active' => true,
+ 'day' => 'one,two',
+ 'cfp_submitter_only' => false,
+ ];
+ public const TYPE_ORGANIZATION =
+ [
+ 'id' => 9,
+ 'technical_name' => 'AFUP_FORUM_ORGANISATION',
+ 'pretty_name' => 'Organisation',
+ 'public' => false,
+ 'members_only' => false,
+ 'default_price' => 0.0,
+ 'active' => true,
+ 'day' => 'one,two',
+ 'cfp_submitter_only' => false,
+ ];
+
public function run(): void
{
$data = [
+ [
+ 'id' => 0,
+ 'technical_name' => 'AFUP_FORUM_PREMIERE_JOURNEE',
+ 'pretty_name' => 'Première journée',
+ 'public' => true,
+ 'members_only' => false,
+ 'default_price' => 150.0,
+ 'active' => true,
+ 'day' => 'one',
+ 'cfp_submitter_only' => false,
+ ],
[
'id' => 1,
'technical_name' => 'AFUP_FORUM_DEUXIEME_JOURNEE',
'pretty_name' => 'Deuxième journée',
'public' => true,
- 'members_only' => 0,
- 'default_price' => 150,
+ 'members_only' => false,
+ 'default_price' => 150.0,
'active' => true,
'day' => 'two',
- 'cfp_submitter_only' => 0,
+ 'cfp_submitter_only' => false,
+ ],
+ self::TYPE_2_DAYS,
+ self::TYPE_2_DAYS_AFUP,
+ [
+ 'id' => 4,
+ 'technical_name' => 'AFUP_FORUM_2_JOURNEES_ETUDIANT',
+ 'pretty_name' => '2 Jours étudiant',
+ 'public' => false,
+ 'members_only' => false,
+ 'default_price' => 150.0,
+ 'active' => true,
+ 'day' => 'one,two',
+ 'cfp_submitter_only' => false,
+ ],
+ [
+ 'id' => 5,
+ 'technical_name' => 'AFUP_FORUM_2_JOURNEES_PREVENTE',
+ 'pretty_name' => '2 Jours prévente',
+ 'public' => false,
+ 'members_only' => false,
+ 'default_price' => 150.0,
+ 'active' => true,
+ 'day' => 'one,two',
+ 'cfp_submitter_only' => false,
+ ],
+ [
+ 'id' => 6,
+ 'technical_name' => 'AFUP_FORUM_2_JOURNEES_AFUP_PREVENTE',
+ 'pretty_name' => '2 Jours prévente AFUP',
+ 'public' => false,
+ 'members_only' => true,
+ 'default_price' => 150.0,
+ 'active' => false,
+ 'day' => 'one,two',
+ 'cfp_submitter_only' => false,
+ ],
+ [
+ 'id' => 7,
+ 'technical_name' => 'AFUP_FORUM_2_JOURNEES_ETUDIANT_PREVENTE',
+ 'pretty_name' => '2 Jours étudiant prévente',
+ 'public' => false,
+ 'members_only' => false,
+ 'default_price' => 150.0,
+ 'active' => false,
+ 'day' => 'one,two',
+ 'cfp_submitter_only' => false,
+ ],
+ [
+ 'id' => 8,
+ 'technical_name' => 'AFUP_FORUM_2_JOURNEES_COUPON',
+ 'pretty_name' => '2 jours coupon',
+ 'public' => false,
+ 'members_only' => false,
+ 'default_price' => 200.0,
+ 'active' => false,
+ 'day' => 'one,two',
+ 'cfp_submitter_only' => false,
+ ],
+ self::TYPE_ORGANIZATION,
+ [
+ 'id' => 10,
+ 'technical_name' => 'AFUP_FORUM_SPONSOR',
+ 'pretty_name' => 'Sponsor',
+ 'public' => false,
+ 'members_only' => false,
+ 'default_price' => 0.0,
+ 'active' => true,
+ 'day' => 'one,two',
+ 'cfp_submitter_only' => false,
+ ],
+ [
+ 'id' => 11,
+ 'technical_name' => 'AFUP_FORUM_PRESSE',
+ 'pretty_name' => 'Presse',
+ 'public' => false,
+ 'members_only' => false,
+ 'default_price' => 0.0,
+ 'active' => true,
+ 'day' => 'one,two',
+ 'cfp_submitter_only' => false,
+ ],
+ [
+ 'id' => 12,
+ 'technical_name' => 'AFUP_FORUM_CONFERENCIER',
+ 'pretty_name' => 'Conférencier',
+ 'public' => false,
+ 'members_only' => false,
+ 'default_price' => 0.0,
+ 'active' => true,
+ 'day' => 'one,two',
+ 'cfp_submitter_only' => false,
+ ],
+ [
+ 'id' => 13,
+ 'technical_name' => 'AFUP_FORUM_INVITATION',
+ 'pretty_name' => 'Invitation',
+ 'public' => false,
+ 'members_only' => false,
+ 'default_price' => 0.0,
+ 'active' => true,
+ 'day' => 'one,two',
+ 'cfp_submitter_only' => false,
],
[
- 'id' => 2,
- 'technical_name' => 'AFUP_FORUM_2_JOURNEES',
- 'pretty_name' => '2 Jours',
+ 'id' => 14,
+ 'technical_name' => 'AFUP_FORUM_PROJET',
+ 'pretty_name' => 'Projet PHP',
+ 'public' => false,
+ 'members_only' => false,
+ 'default_price' => 0.0,
+ 'active' => true,
+ 'day' => 'one,two',
+ 'cfp_submitter_only' => false,
+ ],
+ [
+ 'id' => 15,
+ 'technical_name' => 'AFUP_FORUM_2_JOURNEES_SPONSOR',
+ 'pretty_name' => '2 Jours par sponsor',
+ 'public' => false,
+ 'members_only' => false,
+ 'default_price' => 200.0,
+ 'active' => true,
+ 'day' => 'one,two',
+ 'cfp_submitter_only' => false,
+ ],
+ [
+ 'id' => 16,
+ 'technical_name' => 'AFUP_FORUM_PROF',
+ 'pretty_name' => 'Enseignement supérieur',
+ 'public' => false,
+ 'members_only' => false,
+ 'default_price' => 0.0,
+ 'active' => true,
+ 'day' => 'one,two',
+ 'cfp_submitter_only' => false,
+ ],
+ [
+ 'id' => 17,
+ 'technical_name' => 'AFUP_FORUM_PREMIERE_JOURNEE_ETUDIANT_PREVENTE',
+ 'pretty_name' => '',
+ 'public' => false,
+ 'members_only' => false,
+ 'default_price' => 100.0,
+ 'active' => false,
+ 'day' => 'one',
+ 'cfp_submitter_only' => false,
+ ],
+ [
+ 'id' => 18,
+ 'technical_name' => 'AFUP_FORUM_DEUXIEME_JOURNEE_ETUDIANT_PREVENTE',
+ 'pretty_name' => '',
+ 'public' => false,
+ 'members_only' => false,
+ 'default_price' => 100.0,
+ 'active' => false,
+ 'day' => 'two',
+ 'cfp_submitter_only' => false,
+ ],
+ [
+ 'id' => 19,
+ 'technical_name' => 'AFUP_FORUM_2_JOURNEES_PREVENTE_ADHESION',
+ 'pretty_name' => '',
+ 'public' => false,
+ 'members_only' => false,
+ 'default_price' => 150.0,
+ 'active' => false,
+ 'day' => 'one,two',
+ 'cfp_submitter_only' => false,
+ ],
+ [
+ 'id' => 20,
+ 'technical_name' => 'AFUP_FORUM_PREMIERE_JOURNEE_AFUP',
+ 'pretty_name' => 'Jour 1 AFUP',
+ 'public' => false,
+ 'members_only' => true,
+ 'default_price' => 100.0,
+ 'active' => false,
+ 'day' => 'one',
+ 'cfp_submitter_only' => false,
+ ],
+ [
+ 'id' => 21,
+ 'technical_name' => 'AFUP_FORUM_DEUXIEME_JOURNEE_AFUP',
+ 'pretty_name' => 'Jour 2 AFUP',
+ 'public' => false,
+ 'members_only' => true,
+ 'default_price' => 100.0,
+ 'active' => false,
+ 'day' => 'two',
+ 'cfp_submitter_only' => false,
+ ],
+ [
+ 'id' => 22,
+ 'technical_name' => 'AFUP_FORUM_PREMIERE_JOURNEE_ETUDIANT',
+ 'pretty_name' => 'Jour 1 Etudiant',
+ 'public' => false,
+ 'members_only' => false,
+ 'default_price' => 100.0,
+ 'active' => false,
+ 'day' => 'one',
+ 'cfp_submitter_only' => false,
+ ],
+ [
+ 'id' => 23,
+ 'technical_name' => 'AFUP_FORUM_DEUXIEME_JOURNEE_ETUDIANT',
+ 'pretty_name' => 'Jour 2 Etudiant',
+ 'public' => false,
+ 'members_only' => false,
+ 'default_price' => 100.0,
+ 'active' => false,
+ 'day' => 'two',
+ 'cfp_submitter_only' => false,
+ ],
+ [
+ 'id' => 100,
+ 'technical_name' => 'EARLY_BIRD',
+ 'pretty_name' => 'Les yeux fermés - 2 jours',
'public' => true,
- 'members_only' => 0,
- 'default_price' => 250,
+ 'members_only' => false,
+ 'default_price' => 250.0,
'active' => true,
'day' => 'one,two',
- 'cfp_submitter_only' => 0,
+ 'cfp_submitter_only' => false,
],
[
- 'id' => 3,
- 'technical_name' => 'AFUP_FORUM_2_JOURNEES_AFUP',
- 'pretty_name' => '2 Jours AFUP',
+ 'id' => 101,
+ 'technical_name' => 'EARLY_BIRD_AFUP',
+ 'pretty_name' => 'Les yeux fermés - 2 jours - AFUP',
'public' => true,
- 'members_only' => 1,
- 'default_price' => 150,
+ 'members_only' => true,
+ 'default_price' => 150.0,
'active' => true,
'day' => 'one,two',
- 'cfp_submitter_only' => 0,
+ 'cfp_submitter_only' => false,
],
[
- 'id' => 4,
- 'technical_name' => 'AFUP_TEST',
- 'pretty_name' => 'Pour les tests',
+ 'id' => 102,
+ 'technical_name' => 'LATE_BIRD',
+ 'pretty_name' => 'Tarif de soutien - 2 jours',
'public' => true,
- 'members_only' => 1,
- 'default_price' => 100,
+ 'members_only' => false,
+ 'default_price' => 325.0,
'active' => true,
'day' => 'one,two',
- 'cfp_submitter_only' => 0,
+ 'cfp_submitter_only' => false,
],
[
- 'id' => 5,
- 'technical_name' => 'AFUP_CFP',
- 'pretty_name' => 'Spécial CFP',
+ 'id' => 103,
+ 'technical_name' => 'LATE_BIRD_AFUP',
+ 'pretty_name' => 'Tarif de soutien - 2 jours - AFUP',
'public' => true,
- 'members_only' => 0,
- 'default_price' => 2,
+ 'members_only' => true,
+ 'default_price' => 225.0,
'active' => true,
'day' => 'one,two',
- 'cfp_submitter_only' => 1,
+ 'cfp_submitter_only' => false,
],
[
- 'id' => 9,
- 'technical_name' => 'AFUP_FORUM_ORGANISATION',
- 'pretty_name' => 'Organisation',
+ 'id' => 105,
+ 'technical_name' => 'LATE_BIRD_PREMIERE_JOURNEE',
+ 'pretty_name' => 'Late bird - Première journée',
+ 'public' => true,
+ 'members_only' => false,
+ 'default_price' => 225.0,
+ 'active' => true,
+ 'day' => 'one',
+ 'cfp_submitter_only' => false,
+ ],
+ [
+ 'id' => 106,
+ 'technical_name' => 'LATE_BIRD_DEUXIEME_JOURNEE',
+ 'pretty_name' => 'Late bird - Deuxième journée',
+ 'public' => true,
+ 'members_only' => false,
+ 'default_price' => 225.0,
+ 'active' => true,
+ 'day' => 'two',
+ 'cfp_submitter_only' => false,
+ ],
+ [
+ 'id' => 107,
+ 'technical_name' => 'CFP_SUBMITTER',
+ 'pretty_name' => 'Personne ayant proposé une conférence - 2 jours',
+ 'public' => true,
+ 'members_only' => false,
+ 'default_price' => 150.0,
+ 'active' => true,
+ 'day' => 'one,two',
+ 'cfp_submitter_only' => true,
+ ],
+ [
+ 'id' => 108,
+ 'technical_name' => 'SPECIAL_PRICE',
+ 'pretty_name' => 'Tarif spécial',
'public' => false,
'members_only' => false,
- 'default_price' => 0,
+ 'default_price' => 0.0,
'active' => true,
'day' => 'one,two',
'cfp_submitter_only' => false,
],
[
- 'id' => 108,
- 'technical_name' => 'AFUP_FORUM_SPECIAL_PRICE',
- 'pretty_name' => 'Spécial Forum',
+ 'id' => 109,
+ 'technical_name' => 'AFUP_DAY_EARLY',
+ 'pretty_name' => 'Les Yeux Fermés',
+ 'public' => true,
+ 'members_only' => false,
+ 'default_price' => 50.0,
+ 'active' => true,
+ 'day' => 'one',
+ 'cfp_submitter_only' => false,
+ ],
+ [
+ 'id' => 110,
+ 'technical_name' => 'AFUP_DAY_CROISIERE',
+ 'pretty_name' => 'Tarif de croisière',
+ 'public' => true,
+ 'members_only' => false,
+ 'default_price' => 70.0,
+ 'active' => true,
+ 'day' => 'one',
+ 'cfp_submitter_only' => false,
+ ],
+ [
+ 'id' => 111,
+ 'technical_name' => 'AFUP_DAY_LATE',
+ 'pretty_name' => 'Tarif de soutien',
+ 'public' => true,
+ 'members_only' => false,
+ 'default_price' => 90.0,
+ 'active' => true,
+ 'day' => 'one',
+ 'cfp_submitter_only' => false,
+ ],
+ [
+ 'id' => 112,
+ 'technical_name' => 'AFUP_DAY_CFP_SUBMITTER',
+ 'pretty_name' => 'Personne ayant proposé une conférence',
+ 'public' => true,
+ 'members_only' => false,
+ 'default_price' => 50.0,
+ 'active' => true,
+ 'day' => 'one',
+ 'cfp_submitter_only' => true,
+ ],
+ [
+ 'id' => 113,
+ 'technical_name' => 'AFUP_DAY_LIVE_FREE',
+ 'pretty_name' => "J'aime l'AFUP, un peu !",
+ 'public' => true,
+ 'members_only' => false,
+ 'default_price' => 0.0,
+ 'active' => true,
+ 'day' => 'one',
+ 'cfp_submitter_only' => false,
+ ],
+ [
+ 'id' => 114,
+ 'technical_name' => 'AFUP_DAY_LIVE_SOUTIEN_1',
+ 'pretty_name' => "J'aime l'AFUP, beaucoup !",
+ 'public' => true,
+ 'members_only' => false,
+ 'default_price' => 5.0,
+ 'active' => true,
+ 'day' => 'one',
+ 'cfp_submitter_only' => false,
+ ],
+ [
+ 'id' => 115,
+ 'technical_name' => 'AFUP_DAY_LIVE_SOUTIEN_2',
+ 'pretty_name' => "J'aime l'AFUP, passionnément !",
+ 'public' => true,
+ 'members_only' => false,
+ 'default_price' => 10.0,
+ 'active' => true,
+ 'day' => 'one',
+ 'cfp_submitter_only' => false,
+ ],
+ [
+ 'id' => 116,
+ 'technical_name' => 'AFUP_DAY_LIVE_SOUTIEN_3',
+ 'pretty_name' => "J'aime l'AFUP, à la folie !",
+ 'public' => true,
+ 'members_only' => false,
+ 'default_price' => 20.0,
+ 'active' => true,
+ 'day' => 'one',
+ 'cfp_submitter_only' => false,
+ ],
+ [
+ 'id' => 117,
+ 'technical_name' => 'AFUP_DAY_LIVE_SOUTIEN_4',
+ 'pretty_name' => "Fan hardcore de l'AFUP",
+ 'public' => true,
+ 'members_only' => false,
+ 'default_price' => 50.0,
+ 'active' => true,
+ 'day' => 'one',
+ 'cfp_submitter_only' => false,
+ ],
+ [
+ 'id' => 118,
+ 'technical_name' => 'FORUM_PHP_LIVE_FREE',
+ 'pretty_name' => "J'aime l'AFUP, j'en suis membre !",
'public' => true,
- 'members_only' => 0,
- 'default_price' => 2,
+ 'members_only' => true,
+ 'default_price' => 0.0,
'active' => true,
'day' => 'one,two',
- 'cfp_submitter_only' => 1,
+ 'cfp_submitter_only' => false,
+ ],
+ [
+ 'id' => 119,
+ 'technical_name' => 'FORUM_PHP_LIVE_SOUTIEN_1',
+ 'pretty_name' => "J'aime l'AFUP, un peu !",
+ 'public' => true,
+ 'members_only' => false,
+ 'default_price' => 10.0,
+ 'active' => true,
+ 'day' => 'one,two',
+ 'cfp_submitter_only' => false,
+ ],
+ [
+ 'id' => 120,
+ 'technical_name' => 'FORUM_PHP_LIVE_SOUTIEN_2',
+ 'pretty_name' => "J'aime l'AFUP, beaucoup !",
+ 'public' => true,
+ 'members_only' => false,
+ 'default_price' => 30.0,
+ 'active' => true,
+ 'day' => 'one,two',
+ 'cfp_submitter_only' => false,
+ ],
+ [
+ 'id' => 121,
+ 'technical_name' => 'FORUM_PHP_LIVE_SOUTIEN_3',
+ 'pretty_name' => "J'aime l'AFUP, passionnément !",
+ 'public' => true,
+ 'members_only' => false,
+ 'default_price' => 50.0,
+ 'active' => true,
+ 'day' => 'one,two',
+ 'cfp_submitter_only' => false,
+ ],
+ [
+ 'id' => 122,
+ 'technical_name' => 'FORUM_PHP_LIVE_SOUTIEN_4',
+ 'pretty_name' => "J'aime l'AFUP, à la folie !",
+ 'public' => true,
+ 'members_only' => false,
+ 'default_price' => 70.0,
+ 'active' => true,
+ 'day' => 'one,two',
+ 'cfp_submitter_only' => false,
+ ],
+ [
+ 'id' => 123,
+ 'technical_name' => 'FORUM_PHP_LIVE_SOUTIEN_5',
+ 'pretty_name' => "Fan hardcore de l'AFUP",
+ 'public' => true,
+ 'members_only' => false,
+ 'default_price' => 100.0,
+ 'active' => true,
+ 'day' => 'one,two',
+ 'cfp_submitter_only' => false,
+ ],
+ [
+ 'id' => 124,
+ 'technical_name' => 'FORUM_PHP_LIVE_SOUTIEN_6',
+ 'pretty_name' => 'BFF de l’AFUP',
+ 'public' => true,
+ 'members_only' => false,
+ 'default_price' => 150.0,
+ 'active' => true,
+ 'day' => 'one,two',
+ 'cfp_submitter_only' => false,
+ ],
+ [
+ 'id' => 125,
+ 'technical_name' => 'AFUP_DAY_2021_LIVE_1',
+ 'pretty_name' => 'AFUP Day 2021 Lille / Rennes - édition en ligne, le vendredi 28 mai 2021',
+ 'public' => true,
+ 'members_only' => false,
+ 'default_price' => 25.0,
+ 'active' => true,
+ 'day' => 'one',
+ 'cfp_submitter_only' => false,
+ ],
+ [
+ 'id' => 126,
+ 'technical_name' => 'AFUP_DAY_2021_LIVE_2',
+ 'pretty_name' => 'AFUP Day 2021 Toulouse / Tours - édition en ligne, le vendredi 11 juin 2021',
+ 'public' => true,
+ 'members_only' => false,
+ 'default_price' => 25.0,
+ 'active' => true,
+ 'day' => 'two',
+ 'cfp_submitter_only' => false,
+ ],
+ [
+ 'id' => 127,
+ 'technical_name' => 'AFUP_DAY_2021_LIVE_3',
+ 'pretty_name' => 'Le ticket combo AFUP Day 2021 Lille / Rennes + AFUP Day 2021 Toulouse / Tours - éditions en ligne, le 28 mai et le 11 juin 2021',
+ 'public' => true,
+ 'members_only' => false,
+ 'default_price' => 40.0,
+ 'active' => true,
+ 'day' => 'one,two',
+ 'cfp_submitter_only' => false,
+ ],
+ [
+ 'id' => 128,
+ 'technical_name' => 'AFUP_DAY_2021_LIVE_4',
+ 'pretty_name' => 'Le ticket combo du coeur, AFUP Day 2021 Lille / Rennes + AFUP Day 2021 Toulouse / Tours - éditions en ligne et coup de pouce de soutien à l’AFUP',
+ 'public' => true,
+ 'members_only' => false,
+ 'default_price' => 70.0,
+ 'active' => true,
+ 'day' => 'one,two',
+ 'cfp_submitter_only' => false,
],
];
$table = $this->table('afup_forum_tarif');
$table->truncate();
+ $this->query('ALTER TABLE afup_forum_tarif AUTO_INCREMENT = 10000;');
$table
->insert($data)
- ->save()
- ;
+ ->save();
+ $this->query('UPDATE afup_forum_tarif SET id = 0 WHERE id = 10000;');
}
}
diff --git a/htdocs/pages/administration/forum_inscriptions.php b/htdocs/pages/administration/forum_inscriptions.php
deleted file mode 100644
index 0d90dc83b..000000000
--- a/htdocs/pages/administration/forum_inscriptions.php
+++ /dev/null
@@ -1,421 +0,0 @@
-assign('action', $action);
-
-$eventRepository = $this->eventRepository;
-$ticketEventTypeRepository = $this->ticketEventTypeRepository;
-$ticketTypeAvailability = $this->ticketTypeAvailability;
-$invoiceService = $this->invoiceService;
-$invoiceRepository = $this->invoiceRepository;
-$session = $this->requestStack->getSession();
-$urlGenerator = $this->urlGenerator;
-$eventStatsRepository = $this->eventStatsRepository;
-$ticketRepository = $this->ticketRepository;
-
-function updateGlobalsForTarif(
- EventRepository $eventRepository,
- TicketEventTypeRepository $ticketEventTypeRepository,
- TicketTypeAvailability $ticketTypeAvailability,
- $forumId,
- &$membersTickets = [],
-): array {
- global $AFUP_Tarifs_Forum, $AFUP_Tarifs_Forum_Lib;
- $event = $eventRepository->get($forumId);
- $ticketTypes = $ticketEventTypeRepository->getTicketsByEvent($event, false);
- $AFUP_Tarifs_Forum_Restantes = [];
-
- foreach ($ticketTypes as $ticketType) {
- /**
- * @var $ticketType \AppBundle\Event\Model\TicketEventType
- */
- $AFUP_Tarifs_Forum[$ticketType->getTicketTypeId()] = $ticketType->getPrice();
- $AFUP_Tarifs_Forum_Lib[$ticketType->getTicketTypeId()] = $ticketType->getTicketType()->getPrettyName();
- $AFUP_Tarifs_Forum_Restantes[$ticketType->getTicketTypeId()] = $ticketTypeAvailability->getStock($ticketType, $event);
-
- if ($ticketType->getTicketType()->getIsRestrictedToMembers()) {
- $membersTickets[] = $ticketType->getTicketTypeId();
- }
- }
-
- return ['restantes' => $AFUP_Tarifs_Forum_Restantes];
-}
-
-
-
-$forum = new Forum($bdd);
-$forum_inscriptions = new Inscriptions($bdd);
-$forum_facturation = new Facturation($bdd, $this->pays);
-
-if ($action == 'lister') {
- $list_champs = 'i.id, i.date, i.nom, i.prenom, i.email, f.societe, i.etat, i.coupon, i.type_inscription, f.type_reglement, i.presence_day1, i.presence_day2';
- $list_ordre = 'date desc';
- $list_sens = 'desc';
- $list_associatif = false;
- $list_filtre = false;
-
- if (isset($_GET['tri']) && in_array($_GET['tri'], $tris_valides)
- && isset($_GET['sens']) && in_array($_GET['sens'], $sens_valides)) {
- $list_ordre = $_GET['tri'] . ' ' . $_GET['sens'];
- }
- if (isset($_GET['filtre'])) {
- $list_filtre = $_GET['filtre'];
- }
-
- chargerForumId();
-
- if (!isset($_GET['id_forum']) || intval($_GET['id_forum']) == 0) {
- $_GET['id_forum'] = $forum->obtenirDernier();
- }
- $forumData = $forum->obtenir($_GET['id_forum']);
- $smarty->assign('id_forum', $_GET['id_forum']);
- $memberTickets = [];
-
- $retour = updateGlobalsForTarif($eventRepository, $ticketEventTypeRepository, $ticketTypeAvailability, $_GET['id_forum'], $memberTickets);
- $restantes = $retour['restantes'];
-
- $smarty->assign('forum_tarifs_members', $memberTickets);
- $smarty->assign('forum_tarifs_lib',$AFUP_Tarifs_Forum_Lib);
- $smarty->assign('forum_tarifs_restantes', $restantes);
- $smarty->assign('forum_tarifs',$AFUP_Tarifs_Forum);
- $stats = $eventStatsRepository->getStats((int) $_GET['id_forum']);
- $smarty->assign('statistiques', [
- 'premier_jour' => [
- 'inscrits' => $stats->firstDay->registered,
- 'confirmes' => $stats->firstDay->confirmed,
- 'en_attente_de_reglement' => $stats->firstDay->pending,
- ],
- 'second_jour' => [
- 'inscrits' => $stats->secondDay->registered,
- 'confirmes' => $stats->secondDay->confirmed,
- 'en_attente_de_reglement' => $stats->secondDay->pending,
- ],
- 'types_inscriptions' => [
- 'confirmes' => $stats->ticketType->confirmed,
- 'inscrits' => $stats->ticketType->registered,
- 'payants' => $stats->ticketType->paying,
- ],
- ]);
-
- $smarty->assign('forums', $forum->obtenirListActive());
- $smarty->assign('inscriptions', $forum_inscriptions->obtenirListe($_GET['id_forum'], $list_champs, $list_ordre, $list_associatif, $list_filtre));
- $smarty->assign('finForum', (new \DateTime($forumData['date_fin']))->format('U'));
- $smarty->assign('now', (new \DateTime())->format('U'));
-} elseif ($action == 'supprimer') {
- /** @var Invoice|null $invoice */
- $invoice = $invoiceRepository->getByReference($_GET['id']);
- if ($forum_inscriptions->supprimerInscription($_GET['id']) && (null === $invoice || $invoiceService->deleteInvoice($invoice))) {
- Logs::log('Suppression de l\'inscription ' . $_GET['id']);
- afficherMessage('L\'inscription a été supprimée', '/admin/event/tickets?id=' . $_GET['id_forum']);
- } else {
- afficherMessage('Une erreur est survenue lors de la suppression de l\'inscription', '/admin/event/tickets?id=' . $_GET['id_forum'], true);
- }
-} else {
-
- $formulaire = instancierFormulaire();
- if ($action == 'ajouter') {
- $formulaire->setDefaults(
- [
- 'civilite' => 'M.',
- 'id_pays_facturation' => 'FR',
- 'type_inscription' => -1,
- 'type_reglement' => -1,
- 'citer_societe' => 1,
- 'mail_partenaire' => 0,
- 'newsletter_afup' => 0,
- 'newsletter_nexen' => 0,
- 'date_reglement' => (new \DateTime())->format('Y-m-d'),
- ],
- );
- } else {
- $champs = $forum_inscriptions->obtenir($_GET['id']);
- if ($champs == false) {
- afficherMessage('L\'inscription n\'existe plus', '/admin/event/tickets?id=' . $_GET['id_forum']);
- exit(0);
- }
- $champs2 = $forum_facturation->obtenir($champs['reference']);
- $champs['type_reglement'] = $champs2['type_reglement'];
- $champs['informations_reglement'] = $champs2['informations_reglement'];
- $champs['date_reglement'] = $champs2['date_reglement'];
- $champs['autorisation'] = $champs2['autorisation'];
- $champs['transaction'] = $champs2['transaction'];
- $champs['societe_facturation'] = $champs2['societe'];
- $champs['nom_facturation'] = $champs2['nom'];
- $champs['prenom_facturation'] = $champs2['prenom'];
- $champs['adresse_facturation'] = $champs2['adresse'];
- $champs['code_postal_facturation'] = $champs2['code_postal'];
- $champs['ville_facturation'] = $champs2['ville'];
- $champs['id_pays_facturation'] = $champs2['id_pays'];
- $champs['email_facturation'] = $champs2['email'];
-
- /** @var Ticket $ticket */
- $ticket = $ticketRepository->get($_GET['id']);
- if (null !== $ticket) {
- $champs['commentaires'] = $ticket->getComments();
- }
-
- $formulaire->setDefaults($champs);
-
- if (isset($champs) && isset($champs['id_forum'])) {
- $_GET['id_forum'] = $champs['id_forum'];
- }
- }
- updateGlobalsForTarif($eventRepository, $ticketEventTypeRepository, $ticketTypeAvailability, $_GET['id_forum']);
-
- $formulaire->addElement('hidden', 'old_reference', (isset($champs) ? $champs['reference'] : ''));
- $formulaire->addElement('hidden', 'id_forum', $_GET['id_forum']);
-
- $formulaire->addElement('header', null, 'Informations');
- $groupe = [];
- foreach ($AFUP_Tarifs_Forum as $tarif_key => $tarifs) {
- $groupe[] = $formulaire->createElement('radio', 'type_inscription', null, $AFUP_Tarifs_Forum_Lib[$tarif_key] . ' (' . $AFUP_Tarifs_Forum[$tarif_key] . ' €)' , $tarif_key);
- }
-
-
- $formulaire->addGroup($groupe, 'groupe_type_inscription', 'Formule', '
', false);
-
- $formulaire->addElement('select', 'civilite' , 'Civilité' , ['M.' => 'M.', 'Mme' => 'Mme']);
- $formulaire->addElement('text' , 'nom' , 'Nom' , ['size' => 30, 'maxlength' => 40]);
- $formulaire->addElement('text' , 'prenom' , 'Prénom' , ['size' => 30, 'maxlength' => 40]);
- $formulaire->addElement('text' , 'email' , 'Email' , ['size' => 30, 'maxlength' => 100]);
- $formulaire->addElement('text' , 'telephone' , 'Tél.' , ['size' => 20, 'maxlength' => 20]);
-
- $groupe = [];
-
- $formulaire->addElement('header', null , 'Réservé à l\'administration');
- $formulaire->addElement('static' , 'note' , '' , 'La reference est utilisée comme numéro de facture. Elle peut être commune à plusieurs inscriptions...
');
-
- if ($action != 'ajouter') {
- $formulaire->addElement('static', 'html', '', 'Rechercher la facture');
- }
-
-
- $formulaire->addElement('text' , 'reference' , 'Référence' , ['size' => 50, 'maxlength' => 100]);
- $formulaire->addElement('text' , 'autorisation', 'Autorisation', ['size' => 50, 'maxlength' => 100]);
- $formulaire->addElement('text' , 'transaction' , 'Transaction' , ['size' => 50, 'maxlength' => 100]);
-
- $state = [
- Ticket::STATUS_CREATED => 'Inscription créée',
- Ticket::STATUS_CANCELLED => 'Inscription annulée',
- Ticket::STATUS_ERROR => 'Paiement CB erreur',
- Ticket::STATUS_DECLINED => 'Paiement CB refusé',
- Ticket::STATUS_PAID => 'Inscription réglée',
- Ticket::STATUS_GUEST => 'Invitation',
- Ticket::STATUS_WAITING => 'Attente règlement',
- Ticket::STATUS_CONFIRMED => 'Inscription confirmée',
- Ticket::STATUS_PAID_AFTER => 'Inscription à posteriori',
- ];
- $formulaire->addElement('select', 'etat' , 'Etat' , $state);
-
- $facturation = [
- Ticket::INVOICE_TODO => 'Facture à envoyer',
- Ticket::INVOICE_SENT => 'Facture envoyée',
- Ticket::INVOICE_RECEIVED => 'Facture reçue',
- ];
- $formulaire->addElement('select', 'facturation' , 'Facturation' , $facturation);
-
- $formulaire->addElement('header' , '' , 'Règlement');
- $groupe = [];
- $groupe[] = $formulaire->createElement('radio', 'type_reglement', null, 'Carte bancaire', Ticket::PAYMENT_CREDIT_CARD);
- $groupe[] = $formulaire->createElement('radio', 'type_reglement', null, 'Chèque' , Ticket::PAYMENT_CHEQUE);
- $groupe[] = $formulaire->createElement('radio', 'type_reglement', null, 'Virement' , Ticket::PAYMENT_BANKWIRE);
- $groupe[] = $formulaire->createElement('radio', 'type_reglement', null, 'Aucun' , Ticket::PAYMENT_NONE);
- $formulaire->addGroup($groupe, 'groupe_type_reglement', 'Règlement', ' ', false);
- $formulaire->addElement('textarea' , 'informations_reglement', 'Informations règlement', ['cols' => 42, 'rows' => 4]);
-
-
- $current = $forum->obtenir($_GET['id_forum']);
- $formulaire->addElement('date' , 'date_reglement' , 'Date', ['language' => 'fr', 'minYear' => $current['forum_annee'] - 2, 'maxYear' => $current['forum_annee'] + 2]);
-
-
- $formulaire->addElement('header' , '' , 'Facturation');
- $formulaire->addElement('static' , 'note' , '' , 'Ces informations concernent la personne ou la société qui sera facturée
');
- $formulaire->addElement('text' , 'societe_facturation' , 'Société' , ['size' => 50, 'maxlength' => 100]);
- $formulaire->addElement('text' , 'nom_facturation' , 'Nom' , ['size' => 30, 'maxlength' => 40]);
- $formulaire->addElement('text' , 'prenom_facturation' , 'Prénom' , ['size' => 30, 'maxlength' => 40]);
- $formulaire->addElement('textarea', 'adresse_facturation' , 'Adresse' , ['cols' => 42, 'rows' => 10]);
- $formulaire->addElement('text' , 'code_postal_facturation', 'Code postal' , ['size' => 6, 'maxlength' => 10]);
- $formulaire->addElement('text' , 'ville_facturation' , 'Ville' , ['size' => 30, 'maxlength' => 50]);
- $formulaire->addElement('select' , 'id_pays_facturation' , 'Pays' , $this->pays->obtenirPays());
- $formulaire->addElement('text' , 'email_facturation' , 'Email (facture)', ['size' => 30, 'maxlength' => 100]);
- $formulaire->addElement('text' , 'coupon' , 'Coupon' , ['size' => 30, 'maxlength' => 200]);
-
- $formulaire->addElement('header', null, 'Divers');
- $formulaire->addElement('textarea', 'commentaires' , 'Commentaires', ['cols' => 42, 'rows' => 5]);
- $formulaire->addElement('static', 'label', null, "J'accepte que ma compagnie soit citée comme participant à la conférence");
- $groupe = [];
- $groupe[] = $formulaire->createElement('radio', 'citer_societe', null, 'oui', 1);
- $groupe[] = $formulaire->createElement('radio', 'citer_societe', null, 'non', 0);
- $formulaire->addGroup($groupe, 'groupe_citer_societe', null, ' ', false);
- $formulaire->addElement('static', 'label', null, "Je souhaite être tenu au courant des rencontres de l'AFUP sur des sujets afférents à PHP");
- $groupe = [];
- $groupe[] = $formulaire->createElement('radio', 'newsletter_afup', null, 'oui', 1);
- $groupe[] = $formulaire->createElement('radio', 'newsletter_afup', null, 'non', 0);
- $formulaire->addGroup($groupe, 'groupe_newsletter_afup', null, ' ', false);
- $formulaire->addElement('static', 'label', null, "Je souhaite être tenu au courant de l'actualité PHP via la newsletter de notre sponsor");
- $groupe = [];
- $groupe[] = $formulaire->createElement('radio', 'newsletter_nexen', null, 'oui', 1);
- $groupe[] = $formulaire->createElement('radio', 'newsletter_nexen', null, 'non', 0);
- $formulaire->addGroup($groupe, 'groupe_newsletter_nexen', null, ' ', false);
- $formulaire->addElement('static', 'label', null, "Je souhaite recevoir des informations de la part de vos partenaires presse/media");
- $groupe = [];
- $groupe[] = $formulaire->createElement('radio', 'mail_partenaire', null, 'oui', 1);
- $groupe[] = $formulaire->createElement('radio', 'mail_partenaire', null, 'non', 0);
- $formulaire->addGroup($groupe, 'groupe_mail_partenaire', null, ' ', false);
-
- $formulaire->addElement('header', null, 'Transport');
- $formulaire->addElement('select', 'transport_mode', 'Quel est votre mode de transport ?', Ticket::TRANSPORT_MODES);
- $formulaire->addElement('select', 'transport_distance', 'Quelle sera la distance parcourue ?', Ticket::TRANSPORT_DISTANCES);
-
- $formulaire->addElement('header', 'boutons' , '');
- $formulaire->addElement('submit', 'soumettre', 'Soumettre');
-
- // On ajoute les règles
- $formulaire->addGroupRule('groupe_type_inscription', 'Formule non sélectionnée' , 'required', null, 1);
- $formulaire->addGroupRule('groupe_type_reglement' , 'Règlement non sélectionné', 'required', null, 1);
- $formulaire->addRule('civilite' , 'Civilité non sélectionnée', 'required');
- $formulaire->addRule('nom' , 'Nom manquant' , 'required');
- $formulaire->addRule('prenom' , 'Prénom manquant' , 'required');
- $formulaire->addRule('email' , 'Email manquant' , 'required');
- $formulaire->addRule('email' , 'Email invalide' , 'email');
-
- if ($formulaire->validate()) {
- $valeurs = $formulaire->exportValues();
-
- // Date de réglement au 01/01 => non defini
- if ($valeurs['date_reglement']['d'] == 1 && $valeurs['date_reglement']['M'] == 1) {
- $valeurs['date_reglement'] = null;
- } else {
- $valeurs['date_reglement'] = mktime(0,0,0, (int) $valeurs['date_reglement']['M'], (int) $valeurs['date_reglement']['d'], (int) $valeurs['date_reglement']['Y']);
- }
-
- if ($action == 'ajouter') {
- // On génére la référence si nécessaire
- if (empty($valeurs['reference'])) {
- $label = (empty($valeurs['societe_facturation']) ? (empty($valeurs['nom_facturation']) ? $valeurs['nom'] : $valeurs['nom_facturation']) : $valeurs['societe_facturation']);
- $valeurs['reference'] = $forum_facturation->creerReference($valeurs['id_forum'], $label);
- }
-
- // On ajoute l'inscription dans la base de données
- $ticket = new Ticket();
- $ticket->setDate(new DateTime());
- $ticket->setAmount($GLOBALS['AFUP_Tarifs_Forum'][$valeurs['type_inscription']]);
- $ticket->setForumId($valeurs['id_forum']);
- $ticket->setReference($valeurs['reference']);
- $ticket->setTicketTypeId($valeurs['type_inscription']);
- $ticket->setCivility($valeurs['civilite']);
- $ticket->setLastname($valeurs['nom']);
- $ticket->setFirstname($valeurs['prenom']);
- $ticket->setEmail($valeurs['email']);
- $ticket->setPhoneNumber($valeurs['telephone']);
- $ticket->setVoucher($valeurs['coupon']);
- $ticket->setCompanyCitation($valeurs['citer_societe']);
- $ticket->setNewsletter($valeurs['newsletter_afup']);
- $ticket->setOptin((bool) $valeurs['mail_partenaire']);
- $ticket->setComments($valeurs['commentaires']);
- $ticket->setStatus($valeurs['etat']);
- $ticket->setInvoiceStatus($valeurs['facturation']);
- $ticket->setTransportMode($valeurs['transport_mode']);
- $ticket->setTransportDistance($valeurs['transport_distance']);
- try {
- $ticketRepository->save($ticket);
- $ok = true;
- } catch (Exception) {
- $ok = false;
- }
- } else {
- $ok = $forum_inscriptions->modifierInscription($_GET['id'],
- $valeurs['reference'],
- $valeurs['type_inscription'],
- $valeurs['civilite'],
- $valeurs['nom'],
- $valeurs['prenom'],
- $valeurs['email'],
- $valeurs['telephone'],
- $valeurs['coupon'],
- $valeurs['citer_societe'],
- $valeurs['newsletter_afup'],
- $valeurs['newsletter_nexen'],
- $valeurs['mail_partenaire'],
- $valeurs['commentaires'],
- $valeurs['etat'],
- $valeurs['facturation'],
- (int) $valeurs['transport_mode'],
- (int) $valeurs['transport_distance']);
-
- /** @var Ticket $ticket */
- $ticket = $ticketRepository->get($_GET['id']);
- if (null !== $ticket) {
- $ticket->setComments($valeurs['commentaires']);
- $ticketRepository->save($ticket);
- }
- }
-
- try {
- $paymentDate = null;
- if (is_numeric($valeurs['date_reglement'])) {
- $paymentDate = new DateTime('@' . $valeurs['date_reglement']);
- } else {
- $paymentDate = null !== $valeurs['date_reglement'] ? new DateTime('@' . $valeurs['date_reglement']) : null;
- }
- $invoiceService->handleInvoicing($valeurs['reference'],
- $valeurs['type_reglement'],
- $valeurs['informations_reglement'],
- $paymentDate,
- $valeurs['email_facturation'],
- $valeurs['societe_facturation'],
- $valeurs['nom_facturation'],
- $valeurs['prenom_facturation'],
- $valeurs['adresse_facturation'],
- $valeurs['code_postal_facturation'],
- $valeurs['ville_facturation'],
- $valeurs['id_pays_facturation'],
- $valeurs['id_forum'],
- $valeurs['old_reference'],
- $valeurs['autorisation'],
- $valeurs['transaction'],
- $valeurs['etat']);
- } catch (Exception) {
- $ok = false;
- }
-
- if ($ok) {
- if ($action == 'ajouter') {
- Logs::log('Ajout de l\'inscription de ' . $formulaire->exportValue('prenom') . ' ' . $formulaire->exportValue('nom'));
- } else {
- Logs::log('Modification de l\'inscription de ' . $formulaire->exportValue('prenom') . ' ' . $formulaire->exportValue('nom') . ' (' . $_GET['id'] . ')');
- }
- afficherMessage('L\'inscription a été ' . (($action == 'ajouter') ? 'ajoutée' : 'modifiée'), '/admin/event/tickets?id=' . $_GET['id_forum']);
- } else {
- $smarty->assign('erreur', 'Une erreur est survenue lors de ' . (($action == 'ajouter') ? "l'ajout" : 'la modification') . ' de l\'inscription');
- }
- }
-
- $current = $forum->obtenir($_GET['id_forum'], 'titre');
- $smarty->assign('forum_name', $current['titre']);
- $smarty->assign('formulaire', genererFormulaire($formulaire));
-}
diff --git a/htdocs/templates/administration/forum_inscriptions.html b/htdocs/templates/administration/forum_inscriptions.html
deleted file mode 100644
index 748b90607..000000000
--- a/htdocs/templates/administration/forum_inscriptions.html
+++ /dev/null
@@ -1,279 +0,0 @@
-{if $action == 'lister'}
-
-
| Type | -Tarif | -Nb inscrits | -Nb Confirme | -Nb payants | -Montant | -Places restantes | -
|---|---|---|---|---|---|---|
| - {$forum_tarifs_lib[$forum_tarif_key]} - | -{$forum_tarif} € | -{$inscrits} | -{$confirmes} | -{$payants} | -{$montant} | -{$forum_tarifs_restantes[$forum_tarif_key]|default:''} | - -
| - | - | {$inscrits_total} | -{$confirmes_total} | -{$payants_total} | -{$montant_total} | -- - - - |
| - | Inscrits | -Confirmés | -En attente de règlement | -
|---|---|---|---|
| Jour 1 | -{$statistiques.premier_jour.inscrits} | -{$statistiques.premier_jour.confirmes} | -{if $statistiques.premier_jour.en_attente_de_reglement == ''}0{else}{$statistiques.premier_jour.en_attente_de_reglement}{/if} | -
| Jour 2 | -{$statistiques.second_jour.inscrits} | -{$statistiques.second_jour.confirmes} | -{if $statistiques.second_jour.en_attente_de_reglement == ''}0{else}{$statistiques.second_jour.en_attente_de_reglement}{/if} | -
| Date | -Nom Prénom | -Société (facturation) | -Type | -Etat | -Règ. | -Statut cotisation | -- | ||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| {$inscription.date|date_format:"%d/%m/%Y %H:%M:%S"} | -- {$inscription.prenom} {$inscription.nom} - - - - | -- {$inscription.societe} - {if $inscription.societe} - - - - {/if} - | -{$forum_tarifs_lib[$inscription.type_inscription]} | -- {if $inscription.etat == 0} - Créé - {elseif $inscription.etat == 1} - Annulé - {elseif $inscription.etat == 2} - Erreur - {elseif $inscription.etat == 3} - Refusé - {elseif $inscription.etat == 4} - Reglé - {elseif $inscription.etat == 5} - Invité - {elseif $inscription.etat == 6} - Attente règlement - {elseif $inscription.etat == 7} - Facturé - {/if} - | -{if $inscription.type_reglement == 0}CB{elseif $inscription.type_reglement == 1}CHQ{elseif $inscription.type_reglement == 2}VIR{/if} | - {if $inscription.type_inscription|in_array:$forum_tarifs_members} - {if $inscription.lastsubscription == null} -- - Non trouvée - - | - {elseif $inscription.lastsubscription < $now} -- - A expiré le {$inscription.lastsubscription|date_format:'%d/%m/%Y'} - - - URL Paiement - - | - {elseif $inscription.lastsubscription < $finForum} -- - Expire le {$inscription.lastsubscription|date_format:'%d/%m/%Y'} - - - URL Paiement - - | - {else} -- OK - | - {/if} - {else} -- n/a - | - {/if} -- - - - - - - - | -
Used by example to send a confirmation email to every people associated - * to the same payment.
- * @param string $reference The reference shared - * @return array The people we want ;) - */ - public function getRegistrationsByReference($reference) - { - $ref = $this->_bdd->echapper($reference); - $sql = <<+ La référence est utilisée comme numéro de facture. Elle peut être commune à plusieurs inscriptions. +
+ {% if invoice is defined %} + + {% endif %} + {{ form_row(form.invoice.reference) }} + {{ form_row(form.invoice.authorization) }} + {{ form_row(form.invoice.transaction) }} + {{ form_row(form.invoice.status) }} + {{ form_row(form.invoice.invoice) }} ++ Ces informations concernent la personne ou la société qui sera facturée +
+ {{ form_row(form.invoice.company) }} + {{ form_row(form.invoice.lastname) }} + {{ form_row(form.invoice.firstname) }} + {{ form_row(form.invoice.address) }} + {{ form_row(form.invoice.zipcode) }} + {{ form_row(form.invoice.city) }} + {{ form_row(form.invoice.email) }} ++ Les informations sur le transport ne sont pas demandées pour cet évènement. +
+ {% endif %} +* indique un champ obligatoire
+