<?php

namespace OfficeBrain\Bundle\SubShopBundle\Manager\AbstractManager;

/**
 * @author OfficeBrain 4494 <info@officebrain.com>
 *
 * Description : Sub shop Inquiry Abstract class
 **/
abstract class SubShopInquiryAbstract
{
    protected $entityManager;
    protected $repository;
    protected $request;
    protected $projectSetting;
    protected $paginatorManager;
    protected $emailManager;
    protected $recordsPerPage;

    public function __construct($entityManager, $request, $emailManager, $paginatorManager)
    {
        $this->entityManager = $entityManager;
        $this->repository = $this->entityManager->getRepository('OfficeBrainSubShopBundle:SubShopInquiry');
        $this->request = $request;
        $this->projectSetting = $this->request->get('project_setting');
        $this->paginatorManager = $paginatorManager;
        $this->emailManager = $emailManager;
        $this->recordsPerPage = $this->projectSetting['configuration_rule']['site_management']['option']['sub_shop']['option']['sub_shop_inquiry_record_per_page']['status'];
        $this->repository->setProjectSetting($this->projectSetting);
        $this->subShopInstanceMetaRepo = $this->entityManager->getRepository('OfficeBrainSubShopBundle:SubshopInstanceMeta');
        $this->subShopInstanceMetaRepo->setProjectSetting($this->projectSetting);
    }

    public function __destruct()
    {
        unset($this->entityManager);
        unset($this->repository);
        unset($this->request);
        unset($this->projectSetting);
        unset($this->paginatorManager);
        unset($this->emailManager);
        unset($this->recordsPerPage);
    }

    public function setSubShopInquiry($subshopInquiry, $sendMail = false)
    {
    }

    public function getSubShopInquiry($id)
    {
    }

    public function getSubShopInquiryList()
    {
    }

    public function deleteSubShopInquiry()
    {
    }

    public function approveSubShopInquiry($inquiryId)
    {
    }

    public function rejectSubShopInquiry()
    {
    }

    public function onHoldSubShopInquiry()
    {
    }

    public function searchByStatusSubShopInquiry()
    {
    }

    public function searchByDeleteSubShopInquiry()
    {
    }
    
    public function searchSubShopInquiry()
    {
    }

    public function setSubShopFromInquiry()
    {
    }
    
    public function sendRejectAcknowledgement()
    {
    }
    
    public function sendAdminAcknowledgement($inquiry)
    {
    }
    
    public function sendUserAcknowledgement($inquiry)
    {
    }
}
