Skip to content
Snippets Groups Projects
EntryQueries.php 1.01 KiB
Newer Older
Josh Pollock's avatar
Josh Pollock committed
<?php


namespace calderawp\CalderaFormsQuery;

use calderawp\CalderaFormsQuery\Select\Entry;
use calderawp\CalderaFormsQuery\Select\EntryValues;

class EntryQueries implements QueriesEntries
{
	/**
	 * SQL generator for entry table
	 *
	 * @var Entry
	 */
	protected $entryGenerator;

	/**
	 * SQL generator for entry values table
	 *
	 * @var EntryValues
	 */
	protected $entryValueGenerator;


	/**
	 * @var \wpdb
	 */
	protected $wpdb;

Josh Pollock's avatar
Josh Pollock committed
	public function __construct(Entry $entryGenerator, EntryValues $entryValueGenerator, \wpdb $wpdb)
Josh Pollock's avatar
Josh Pollock committed
	{
		$this->entryGenerator = $entryGenerator;
		$this->entryValueGenerator = $entryValueGenerator;
		$this->wpdb = $wpdb;
	}

	/** @inheritdoc */
Josh Pollock's avatar
Josh Pollock committed
	public function getResults($sql)
Josh Pollock's avatar
Josh Pollock committed
	{
Josh Pollock's avatar
Josh Pollock committed
		$results = $this->wpdb->get_results($sql);
		if (empty($results)) {
Josh Pollock's avatar
Josh Pollock committed
			return [];
		}
		return $results;
	}

	/** @inheritdoc */
	public function getEntryValueGenerator()
	{
		return $this->entryValueGenerator;
	}

	/** @inheritdoc */
	public function getEntryGenerator()
	{
		return $this->entryGenerator;
	}
Josh Pollock's avatar
Josh Pollock committed
}