diff options
author | Harald Eilertsen <haraldei@anduin.net> | 2021-04-22 23:15:22 +0200 |
---|---|---|
committer | Harald Eilertsen <haraldei@anduin.net> | 2021-04-22 23:15:22 +0200 |
commit | a5ea57f20c1beb80f327fea5233605400462156c (patch) | |
tree | bd6281b9519f3fb1bd729327ad6d41649555a0d1 | |
parent | 6076d8ae50cc43b7722fcc63e6eba38117f91206 (diff) | |
download | gigologadmin-a5ea57f20c1beb80f327fea5233605400462156c.tar.gz gigologadmin-a5ea57f20c1beb80f327fea5233605400462156c.tar.bz2 gigologadmin-a5ea57f20c1beb80f327fea5233605400462156c.zip |
Concert::create return NULL if concert already exist.
We probably need some better error handling here. There's a myriad of
reasons why this call could fail, and we might need to communicate the
failure reason somewhere.
-rw-r--r-- | includes/admin/views/giglog_admin_page.php | 19 | ||||
-rw-r--r-- | includes/concert.php | 8 | ||||
-rw-r--r-- | tests/ConcertTest.php | 2 |
3 files changed, 17 insertions, 12 deletions
diff --git a/includes/admin/views/giglog_admin_page.php b/includes/admin/views/giglog_admin_page.php index 92d97dd..b48fa77 100644 --- a/includes/admin/views/giglog_admin_page.php +++ b/includes/admin/views/giglog_admin_page.php @@ -329,17 +329,20 @@ if ( !class_exists( 'GiglogAdmin_AdminPage' ) ) { //header("Refresh: 1; URL=$url2"); //reload page } - if(isset($_POST['newconcert'])) - { - IF (empty($_POST['cname']) || empty($_POST['selectvenueadmin']) || empty($_POST['cdate']) || empty($_POST['ticket']) || empty($_POST['eventurl'])) + if(isset($_POST['newconcert'])) { + if (empty($_POST['cname']) || empty($_POST['selectvenueadmin']) || empty($_POST['cdate']) || empty($_POST['ticket']) || empty($_POST['eventurl'])) { echo '<script language="javascript">alert("You are missing a value, concert was not created"); </script>'; - else - { - $ret = GiglogAdmin_Concert::create($_POST['cname'], $_POST['selectvenueadmin'], $_POST['cdate'], $_POST['ticket'], $_POST['eventurl']); - if ($ret!='dup') echo '<script language="javascript">alert("Yey, concert created"); </script>'; - else echo '<script language="javascript">alert("Nay, concert was duplicated"); </script>'; + } + else { + if (GiglogAdmin_Concert::create($_POST['cname'], $_POST['selectvenueadmin'], $_POST['cdate'], $_POST['ticket'], $_POST['eventurl'])) { + echo '<script language="javascript">alert("Yey, concert created"); </script>'; + } + else { + echo '<script language="javascript">alert("Nay, concert was duplicated"); </script>'; + } } } + if(isset($_POST['editconcert'])) { IF (empty($_POST['cname']) || empty($_POST['selectvenueadmin']) || empty($_POST['cdate']) || empty($_POST['ticket']) || empty($_POST['eventurl'])) diff --git a/includes/concert.php b/includes/concert.php index 37e8fe3..22fc13d 100644 --- a/includes/concert.php +++ b/includes/concert.php @@ -51,7 +51,7 @@ if ( !class_exists('GiglogAdmin_Concert') ) { } } - static function check_duplicate($cname, $venue, $cdate, $ticketlink, $eventlink) + private static function check_duplicate($cname, $venue, $cdate, $ticketlink, $eventlink) { global $wpdb; @@ -62,8 +62,10 @@ if ( !class_exists('GiglogAdmin_Concert') ) { return ('new'); } + public static function create($cname, $venue, $cdate, $ticketlink, $eventlink) - { $c = GiglogAdmin_Concert::check_duplicate($cname, $venue, $cdate, $ticketlink, $eventlink); + { + $c = GiglogAdmin_Concert::check_duplicate($cname, $venue, $cdate, $ticketlink, $eventlink); if ($c=='new') { $attrs = new stdClass(); @@ -102,7 +104,7 @@ if ( !class_exists('GiglogAdmin_Concert') ) { . ' CONCERT NAME ' . $cname . ', VENUE ID ' . $venue . ', CONCERTDATE ' . $cdate); - return('dup'); + return NULL; } } diff --git a/tests/ConcertTest.php b/tests/ConcertTest.php index 19267ee..82bdc9a 100644 --- a/tests/ConcertTest.php +++ b/tests/ConcertTest.php @@ -44,6 +44,6 @@ final class ConcertTest extends WP_UnitTestCase "https://example.com/tickets/42", "https://example.com/events/93"); - $this->assertEquals("dup", $new); + $this->assertNull($new); } } |