summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAndreaChirulescu <andrea.chirulescu@gmail.com>2021-04-08 23:13:42 +0200
committerAndreaChirulescu <andrea.chirulescu@gmail.com>2021-04-08 23:13:42 +0200
commit7dfafd9381435df08b1467b18f27fb4b2e7251e0 (patch)
treea27ff6a99326c22e4ff2d87384192ad1206baf3e
parentb6cdf32a16c06219628defb680ff3c4ffc7fc88c (diff)
downloadgigologadmin-7dfafd9381435df08b1467b18f27fb4b2e7251e0.tar.gz
gigologadmin-7dfafd9381435df08b1467b18f27fb4b2e7251e0.tar.bz2
gigologadmin-7dfafd9381435df08b1467b18f27fb4b2e7251e0.zip
Beginning of a very rudimentary form for adding/editing concerts
-rw-r--r--includes/admin/views/giglog_admin_page.php34
-rw-r--r--includes/band.php97
-rw-r--r--includes/venue.php134
3 files changed, 159 insertions, 106 deletions
diff --git a/includes/admin/views/giglog_admin_page.php b/includes/admin/views/giglog_admin_page.php
index 7970cf3..89e92fd 100644
--- a/includes/admin/views/giglog_admin_page.php
+++ b/includes/admin/views/giglog_admin_page.php
@@ -42,8 +42,42 @@ if ( !class_exists( 'GiglogAdmin_AdminPage' ) ) {
<p><?php echo GiglogAdmin_AdminPage::get_filters() ?></p>
<p><?php echo GiglogAdmin_AdminPage::get_concerts() ?></p>
</div>
+
+ <form method="POST" action="" class="concedit" > Here Be Dragons <br>
+ <label for="band">Band:</label><?php echo GiglogAdmin_AdminPage::get_allbands() ?><br>
+ <label for="venue">Venue:</label><?php echo GiglogAdmin_AdminPage::get_allvenues() ?><br>
+ <label for="cdate">Date:</label><input type="date" id="cdate" name="cdate"><br>
+ <label for="ticket">Tickets:</label><input type="text" id="ticket" name="ticket"><br>
+ <label for="eventurl">Event link:</label><input type="text" id="eventurl" name="eventurl"><br>
+
+ <p><button>Submit</button></p>
+ </form>
<?php
}
+ static function get_allvenues()
+ { $select .= '<select name="selectvenue">';
+ foreach ( GiglogAdmin_Venue::all_venues() AS $venue )
+ {
+ $select .= '<option value="' . $venue -> id. '">'.$venue->vname;
+ $select .='</option>';
+ }
+ $select .= '</select>';
+ return($select);
+
+ }
+
+ static function get_allbands()
+ {
+ $select .= '<select name="selectband">';
+ foreach ( GiglogAdmin_Band::all_bands() AS $band )
+ {
+ $select .= '<option value="' . $band -> id. '">'.$band->vname;
+ $select .='</option>';
+ }
+ $select .= '</select>';
+ return($select);
+
+ }
static function get_filters()
{
diff --git a/includes/band.php b/includes/band.php
index ce3c689..12e80f4 100644
--- a/includes/band.php
+++ b/includes/band.php
@@ -1,44 +1,53 @@
-<?php
-/*
- * Copyright (C) 2021 Harald Eilertsen, Andrea Chirulescu
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Affero General Public License as
- * published by the Free Software Foundation, either version 3 of the
- * License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Affero General Public License for more details.
- *
- * You should have received a copy of the GNU Affero General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-if ( !class_exists('GiglogAdmin_Band') ) {
- class GiglogAdmin_Band
- {
- static function create($name)
- {
- global $wpdb;
-
- $wpdb->insert('wpg_bands', array(
- 'id' => '',
- 'wpgband_name' => $name
- ));
-
- return $wpdb->insert_id;
- }
-
- static function find_or_create($name)
- {
- global $wpdb;
-
- $bandsql = 'SELECT id FROM wpg_bands WHERE upper(wpgband_name)="' . $name . '"';
- $results = $wpdb->get_results($bandsql);
-
- return $results ? $results[0]->id : GiglogAdmin_Band::create($name);
- }
- }
-}
+<?php
+/*
+ * Copyright (C) 2021 Harald Eilertsen, Andrea Chirulescu
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Affero General Public License as
+ * published by the Free Software Foundation, either version 3 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+
+if ( !class_exists('GiglogAdmin_Band') ) {
+ class GiglogAdmin_Band
+ {
+ static function create($name)
+ {
+ global $wpdb;
+
+ $wpdb->insert('wpg_bands', array(
+ 'id' => '',
+ 'wpgband_name' => $name
+ ));
+
+ return $wpdb->insert_id;
+ }
+
+ static function find_or_create($name)
+ {
+ global $wpdb;
+
+ $bandsql = 'SELECT id FROM wpg_bands WHERE upper(wpgband_name)="' . $name . '"';
+ $results = $wpdb->get_results($bandsql);
+
+ return $results ? $results[0]->id : GiglogAdmin_Band::create($name);
+ }
+ static function all_bands()
+ {
+ global $wpdb;
+
+ $results = $wpdb->get_results("select id, wpgband_name as vname from wpg_bands order by wpgband_name");
+
+ return ($results);
+ }
+
+ }
+}
diff --git a/includes/venue.php b/includes/venue.php
index de144fd..b742a17 100644
--- a/includes/venue.php
+++ b/includes/venue.php
@@ -1,62 +1,72 @@
-<?php
-/*
- * Copyright (C) 2021 Harald Eilertsen, Andrea Chirulescu
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Affero General Public License as
- * published by the Free Software Foundation, either version 3 of the
- * License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Affero General Public License for more details.
- *
- * You should have received a copy of the GNU Affero General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-if ( !class_exists('GiglogAdmin_Venue') ) {
- class GiglogAdmin_Venue
- {
- static function create($name)
- {
- global $wpdb;
-
- $wpdb->insert('wpg_venues', array(
- 'id' => '',
- 'wpgvenue_name' => $name
- ));
-
- return $wpdb->insert_id;
- }
-
- static function find_or_create($name)
- {
- global $wpdb;
-
- $venuesql = 'SELECT id FROM wpg_venues WHERE upper(wpgvenue_name)="' . $name . '"';
- $results = $wpdb->get_results($venuesql);
-
- return $results ? $results[0]->id : GiglogAdmin_Venue::create($name);
- }
-
- static function all_cities()
- {
- global $wpdb;
- $results = $wpdb->get_results('select distinct wpgvenue_city from wpg_venues');
-
- return array_map(function ($r) { return $r->wpgvenue_city; }, $results);
- }
-
- static function venues_in_city($city)
- {
- global $wpdb;
- $q = $wpdb->prepare(
- "select id, wpgvenue_name from wpg_venues where wpgvenue_city=?", $city);
- $results = $wpdb->get_results($q);
-
- return array_map(function ($r) { return [$r->id, $r->wpgvenue_name]; }, $results);
- }
- }
-}
+<?php
+/*
+ * Copyright (C) 2021 Harald Eilertsen, Andrea Chirulescu
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Affero General Public License as
+ * published by the Free Software Foundation, either version 3 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+
+if ( !class_exists('GiglogAdmin_Venue') ) {
+ class GiglogAdmin_Venue
+ {
+ static function create($name)
+ {
+ global $wpdb;
+
+ $wpdb->insert('wpg_venues', array(
+ 'id' => '',
+ 'wpgvenue_name' => $name
+ ));
+
+ return $wpdb->insert_id;
+ }
+
+ static function find_or_create($name)
+ {
+ global $wpdb;
+
+ $venuesql = 'SELECT id FROM wpg_venues WHERE upper(wpgvenue_name)="' . $name . '"';
+ $results = $wpdb->get_results($venuesql);
+
+ return $results ? $results[0]->id : GiglogAdmin_Venue::create($name);
+ }
+
+ static function all_cities()
+ {
+ global $wpdb;
+ $results = $wpdb->get_results('select distinct wpgvenue_city from wpg_venues');
+
+ return array_map(function ($r) { return $r->wpgvenue_city; }, $results);
+ }
+
+ static function all_venues()
+ {
+ global $wpdb;
+
+ $results = $wpdb->get_results("select id, CONCAT( IFNULL(wpgvenue_name,''),'-',IFNULL(wpgvenue_city,'')) as vname from wpg_venues");
+
+ return ($results);
+ }
+
+
+ static function venues_in_city($city)
+ {
+ global $wpdb;
+ $q = $wpdb->prepare(
+ "select id, wpgvenue_name from wpg_venues where wpgvenue_city=?", $city);
+ $results = $wpdb->get_results($q);
+
+ return array_map(function ($r) { return [$r->id, $r->wpgvenue_name]; }, $results);
+ }
+ }
+}