<?php

  //================================================================================================

  class AddressSql extends MySQL {

    public $sectionFilter_sqlSelectColumns;
    public $sectionTable_sqlSelectColumns;
    public $sectionRecord_sqlSelect;

    public $sectionTableName;
    public $sectionTablePrimaryKey;

    //================================================================================================
    // Function Constructor()
    //================================================================================================

    public function __construct() {
      
      $this->set_sectionFilter_sqlSelectColumns();
      
      $this->set_sectionTable_sqlSelectColumns();

      $this->sectionRecord_sqlSelect = '';

      $this->sectionTableName = 'dbo_tblContactAddress';
      $this->sectionTablePrimaryKey = 'addressId';

      // Create the parent MySQL object
			parent :: __construct();
    }

    //================================================================================================
    // Function set_sectionFilter_sqlSelectColumns()
    //================================================================================================

    private function set_sectionFilter_sqlSelectColumns() {

      $this->sectionFilter_sqlSelectColumns = <<<EOD
        SELECT
          addressId AS itemId
        FROM dbo_tblContactAddress
      EOD;
      
    }

    //================================================================================================
    // Function set_sectionTable_sqlSelectColumns()
    //================================================================================================

    private function set_sectionTable_sqlSelectColumns() {

      $this->sectionTable_sqlSelectColumns = <<<EOD
        SELECT
          tblA.addressId
          , tblA.addressLabel
          , CONCAT_WS( ', ' 
              , NULLIF(TRIM(tblA.addressLine1), '')
              , NULLIF(TRIM(tblA.addressLine2), '')
              , NULLIF(TRIM(tblA.addressLine3), '')
              , NULLIF(TRIM(tblA.addressLine4), '')
              , NULLIF(TRIM(tblA.addressTown), '')
              , NULLIF(TRIM(tblA.addressCounty), '')
              , NULLIF(TRIM(tblA.addressPostcode), '')
            ) AS addressDescription
        FROM dbo_tblContactAddress AS tblA
      EOD;

    }
    
    //================================================================================================
    // Function set_sectionRecord_sqlSelect()
    //================================================================================================

    public function set_sectionRecord_sqlSelect($addressId) {

      $sectionRecordSqlSelect = <<<EOD
        SELECT
          tblA.addressId
          , tblA.addressLabel
          , tblA.addressLine1
          , tblA.addressLine2
          , tblA.addressLine3
          , tblA.addressLine4
          , tblA.addressTown
          , tblA.addressCounty
          , tblA.addressPostcode
          FROM dbo_tblContactAddress AS tblA
        WHERE tblA.addressId = %d
      EOD;

      $this->sectionRecord_sqlSelect = sprintf($sectionRecordSqlSelect, $addressId);
    }

    //================================================================================================

  }

  //================================================================================================

?>