diff options
Diffstat (limited to 'includes/band.php')
-rw-r--r-- | includes/band.php | 151 |
1 files changed, 0 insertions, 151 deletions
diff --git a/includes/band.php b/includes/band.php deleted file mode 100644 index 3460acb..0000000 --- a/includes/band.php +++ /dev/null @@ -1,151 +0,0 @@ -<?php - -// SPDX-FileCopyrightText: 2021 Andrea Chirulescu <andrea.chirulescu@gmail.com> -// SPDX-FileCopyrightText: 2021 Harald Eilertsen <haraldei@anduin.net> -// -// SPDX-License-Identifier: AGPL-3.0-or-later - -if ( !class_exists('GiglogAdmin_Band') ) { - class GiglogAdmin_Band - { - private $id; - private $bandname; - private $country; - - /* - * Constructs a new band object from an array of attributes. - * The attributes are expected to be named as in the database, - * so this constructor can be used to construct the object - * directly from the database row. - */ - public function __construct($attrs = []) - { - $this->id = isset($attrs->id) ? $attrs->id : NULL; - $this->bandname = isset($attrs->wpgband_name) ? $attrs->wpgband_name : NULL; - $this->country = isset($attrs->wpgband_country) ? $attrs->wpgband_country : 'NO'; - } - - static function create($bandname, $country = 'NO'): self - { - $band = GiglogAdmin_Band::find($bandname, $country); - - if ( ! $band ) { - $band = new GiglogAdmin_Band((object) [ - 'wpgband_name' => $bandname, - 'wpgband_country' => $country, - ]); - - $band->save(); - - error_log( 'NEW BAND ADDED: ' - . ' ID: ' . $band->id() - . ' BAND NAME ' . $band->bandname() - . ', COUNTRY ' . $band->country()); - } - - return $band; - } - - static function find($name, $country): ?self - { - global $wpdb; - - $q = 'SELECT * FROM wpg_bands ' - . 'WHERE upper(wpgband_name)="' . $name - . '" and wpgband_country = "' . $country.'"'; - - $results = $wpdb->get_results($q); - - if ($results) { - return new GiglogAdmin_Band($results[0]); - } - else { - return NULL; - } - } - - - 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); - } - - static function all_countries() - { - global $wpdb; - - $results = $wpdb->get_results("select id, wpgcountry_name as cname from wpg_countries order by id"); - - return ($results); - } - - /** - * @return array|string - * - * @psalm-return array{0: mixed, 1: mixed}|string - */ - static function get_band($bid) - { - global $wpdb; - if(!empty($bid)) - { - - $results = $wpdb->get_results('select wpgband_name as bname, wpgband_country as cname from wpg_bands where wpg_bands.id = '.$bid ); - - return array ($results[0]->bname,$results[0]->cname); - } - else return(''); - } - - static function update_band($bid,$bname,$bcountry) - { - global $wpdb; - - $res = $wpdb->update('wpg_bands', array( - 'wpgband_name' => $bname, - 'wpgband_country' => $bcountry - ), - array('id' => $bid) - ); - - if ( !$res ) { - // exit( var_dump( $wpdb->last_query ) ); //for onscreen debugging when needed - error_log( __CLASS__ . '::' . __FUNCTION__ . ": {$wpdb->last_error}"); - die; - } - - return ($wpdb->last_error); - } - - public function save(): void - { - global $wpdb; - - $wpdb->insert('wpg_bands', array( - 'id' => '', - 'wpgband_name' => $this->bandname, - 'wpgband_country' => $this->country - )); - - $this->id = $wpdb->insert_id; - } - - public function id() - { - return $this->id; - } - - public function bandname() - { - return $this->bandname; - } - public function country() - { - return $this->country; - } - } -} |