From 224f0149ea513146b164736f461e6cbba4b86add Mon Sep 17 00:00:00 2001 From: Harald Eilertsen Date: Sun, 27 Jun 2021 13:05:08 +0200 Subject: Begin move roles and status field to concerts table. --- giglogadmin.php | 1 + includes/concert.php | 5 +++++ includes/roles.php | 12 ++++++++++++ tests/ConcertTest.php | 25 +++++++++++++++++++++++++ 4 files changed, 43 insertions(+) create mode 100644 includes/roles.php diff --git a/giglogadmin.php b/giglogadmin.php index c35c470..dec54a7 100644 --- a/giglogadmin.php +++ b/giglogadmin.php @@ -34,6 +34,7 @@ if ( !class_exists( 'GiglogAdmin_Plugin' ) ) { require_once __DIR__ . '/includes/admin/helpfiles/instr_reviewers.php'; require_once __DIR__ . '/includes/admin/helpfiles/instr_photog.php'; require_once __DIR__ . '/includes/view-helpers/select_field.php'; + require_once __DIR__ . '/includes/roles.php'; class GiglogAdmin_Plugin { diff --git a/includes/concert.php b/includes/concert.php index 6257fab..db8d68a 100644 --- a/includes/concert.php +++ b/includes/concert.php @@ -274,6 +274,11 @@ if ( !class_exists('GiglogAdmin_Concert') ) { { return $this->roles; } + + public function assign_role( int $role, string $username ) : void + { + $this->roles[$role] = $username; + } } } ?> diff --git a/includes/roles.php b/includes/roles.php new file mode 100644 index 0000000..dbbedd2 --- /dev/null +++ b/includes/roles.php @@ -0,0 +1,12 @@ +assertEquals( GiglogAdmin_Concert::STATUS_ACCRED_REQ, $fetched_gig_2->status() ); } + public function testAssignConcertRoles() : void + { + $venue = GiglogAdmin_Venue::create("a venue"); + $today = date("Y-m-d"); + + $gig = GiglogAdmin_Concert::create( + "a concert123", + $venue->id(), + $today, + "https://example.com/tickets/42", + "https://example.com/events/93"); + + $gig->assign_role( GiglogAdmin_Roles::PHOTO1, 'user1' ); + $this->assertEquals( [ GiglogAdmin_Roles::PHOTO1 => 'user1' ], $gig->roles() ); + + $gig->save(); + + var_dump($gig); + + $fetched_gig = GiglogAdmin_Concert::get( $gig->id() ); + global $wpdb; + $wpdb->print_error(); + $this->assertEquals( [ GiglogAdmin_Roles::PHOTO1 => 'user1' ], $fetched_gig->roles() ); + } + public function testOnlyFetchConcertsFromGivenCity() : void { $gigs_in_svene = GiglogAdmin_Concert::find_concerts([ "city" => "Svene"]); -- cgit v1.2.3