Your IP : 216.73.216.39


Current Path : /home/wirbesti/public_html/php/
Upload File :
Current File : /home/wirbesti/public_html/php/CampaignCommittee.php

<?php
ini_set('display_errors', 1);
ini_set('display_startup_errors', 1);
error_reporting(E_ALL);
class CampaignCommittee
{
    private $con;
    private int $lastid;

    // Database Connection
    public function __construct(DBConnection $database)
    {
        $this->con = $database;
        $this->lastid = -1;
        return $this->con;
    }

    public function getByIds(int $campaignid, $committeeid)
    {
        $query = "SELECT `campaignid`, `committeeid`, `description` FROM `nvbjn_campaign_committee` c ".
        "WHERE c.campaignid = :campaignid and c.committeeid = :committeeid;";
        $getcampaigncommittee = $this->con->dbc->prepare($query);
        $getcampaigncommittee->bindParam(':campaignid', $campaignid);
        $getcampaigncommittee->bindParam(':committeeid', $committeeid);
        $getcampaigncommittee->execute();
        $result = $getcampaigncommittee->fetch();
        return $result;
    }

    public function getCommitteeOfCampaign(int $campaignid)
    {
        $query = "SELECT `committeeid` FROM `nvbjn_campaign_committee` c ".
        "WHERE c.campaignid = :campaignid;";
        $getcampaigncommittee = $this->con->dbc->prepare($query);
        $getcampaigncommittee->bindParam(':campaignid', $campaignid);
        $getcampaigncommittee->execute();
        $result = $getcampaigncommittee->fetchAll();
        return $result;
    }

    public function getCommitteeMembersByCampaign(int $campaignid)
    {
        $query = "SELECT cc.`committeeid`,c.`name`, c.`address`, c.`zip`, c.`town`, c.`picturepath`, c.`description` FROM `nvbjn_campaign_committee` cc ".
                "JOIN `nvbjn_committee` c on c.id = cc.committeeid ".
                " WHERE cc.campaignid = :campaignid ".
                "ORDER BY c.`name` ASC;";
        $getcampaigncommittee = $this->con->dbc->prepare($query);
        $getcampaigncommittee->bindParam(':campaignid', $campaignid);
        $getcampaigncommittee->execute();
        $result = $getcampaigncommittee->fetchAll();
        return $result;
    }

    public function getCommitteeMembersByMemberid(int $committeeid)
    {
        $query = "SELECT c.`name`, c.`address`, c.`zip`, c.`town`, c.`picturepath`, c.`description` FROM `nvbjn_campaign_committee` cc ".
            " WHERE c.committeeid = :committeeid ".
            "ORDER BY c.`name` ASC;";
        $getcampaigncommittee = $this->con->dbc->prepare($query);
        $getcampaigncommittee->bindParam(':committeeid', $committeeid);
        $getcampaigncommittee->execute();
        $result = $getcampaigncommittee->fetchAll();
        return $result;
    }


    public function insert($data)
    {
        $campaignid = $data['campaignid'];
        $committeeid = $data['committeeid'];
        $description = $data['description'] ?? '';

        $cdata = [
            'campaignid' => $campaignid,
            'committeeid' => $committeeid,
            'description' => $description,
            ];

        $insertSQL = "INSERT INTO `nvbjn_campaign_committee` (`campaignid`, `committeeid`, `description`) ".
          "VALUES (:campaignid, :committeeid, :description)";

        $result = false;
        try {
            $this->con->dbc->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
            $insertmetadata = $this->con->dbc->prepare($insertSQL);

            $result = $insertmetadata->execute($cdata);
            $last_id = $this->con->dbc->lastInsertId();
            $this->lastid = $last_id;
        } catch (PDOException $e)
        {
            echo $e->getMessage().' in '.$e->getFile().' on line '.$e->getLine();
        }
        return $result;
    }

	public function deleteFromCampaign($campaignid)
	{
		$deleteSQL = "DELETE FROM `nvbjn_campaign_committee` WHERE `campaignid` = :campaignid";

		try
		{
			$this->con->dbc->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
			$deletequery = $this->con->dbc->prepare($deleteSQL);
			$deletequery->bindParam(':campaignid', $campaignid);

			$result = $deletequery->execute();
			return $result;
		} catch (PDOException $e)
		{
			echo $e->getMessage().' in '.$e->getFile().' on line '.$e->getLine();
		}
	}

    public function getLastId()
    {
        return $this->lastid;
    }

}

?>