/** * Returns an singleton instance of this class * * @param object $config * @param object $args * @return */ public static function getInstance($config, $args) { if (self::$instance == null) { self::$instance = new CompanyItemCheckListManager($config, $args); } return self::$instance; }
public function service() { $companyItemCheckListManager = CompanyItemCheckListManager::getInstance($this->config, $this->args); $itemId = intval($this->secure($_REQUEST['item_id'])); $itemAvailability = intval($this->secure($_REQUEST['item_availability'])); $companyId = $this->getUserId(); $companyItemCheckListManager->setCompanyItemAvailability($companyId, $itemId, $itemAvailability); $itemManager = ItemManager::getInstance($this->config, $this->args); if ($itemAvailability === -1) { $itemManager->setItemHidden($itemId, 1); } elseif ($itemAvailability === 1) { $itemManager->setItemTillDateAttribute($itemId, date('Y-m-d', strtotime("tomorrow"))); } $jsonArr = array('status' => 'ok'); echo json_encode($jsonArr); return true; }
public function service() { $customer = $this->getCustomer(); $userLevel = $this->sessionManager->getUser()->getLevel(); if ($userLevel == UserGroups::$GUEST) { $jsonArr = array('status' => "err", "errText" => "Access denied!"); echo json_encode($jsonArr); return false; } $item_id = $this->secure($_REQUEST['item_id']); $keep_anonymous = $this->secure($_REQUEST['keep_anonymous']); $from_email = $customer->getEmail(); $from_name = $customer->getName(); $from_customer_type = $userLevel == UserGroups::$USER ? 'user' : ($userLevel == UserGroups::$COMPANY ? 'company' : 'admin'); $itemManager = ItemManager::getInstance($this->config, $this->args); $itemDto = $itemManager->selectByPK($item_id); if (!$itemDto) { $jsonArr = array('status' => "err", "errText" => "Item doesn't exist!"); echo json_encode($jsonArr); return false; } if ($itemDto->getItemAvailableTillDate() >= date('Y-m-d')) { $jsonArr = array('status' => "message", "item_available" => true); echo json_encode($jsonArr); return false; } if ($itemDto->getHidden() == 1) { $jsonArr = array('status' => "message", "item_not_available" => true); echo json_encode($jsonArr); return false; } $company_id = $itemDto->getCompanyId(); $companyItemCheckListManager = CompanyItemCheckListManager::getInstance($this->config, $this->args); $companyItemCheckListManager->addCompanyItemCheckList($company_id, $item_id, $from_email, $from_name, $from_customer_type, $keep_anonymous); $jsonArr = array('status' => "ok"); echo json_encode($jsonArr); return true; }
/** * Initializes DB mappers * * @param object $config * @param object $args * @return */ function __construct($config, $args) { $this->companyItemCheckListManager = CompanyItemCheckListManager::getInstance($this->config, $this->{$args}); $this->config = $config; $this->args = $args; }
require_once CLASSES_PATH . "/util/db/DBMSFactory.class.php"; require_once CLASSES_PATH . "/managers/OnlineUsersManager.class.php"; require_once CLASSES_PATH . "/managers/CustomerAlertsManager.class.php"; require_once CLASSES_PATH . "/managers/CompanyItemCheckListManager.class.php"; require_once CLASSES_PATH . "/managers/CmsSearchRequestsManager.class.php"; require_once CLASSES_PATH . "/managers/CbaRatesManager.class.php"; require_once CLASSES_PATH . "/managers/ReceiveEmailManager.class.php"; $config = parse_ini_file(CONF_PATH . "/config.ini"); DBMSFactory::init($config); $onlineUsersManager = new OnlineUsersManager($config, null); $onlineUsersManager->removeTimeOutedUsers(120); //2 minutes $customerAlertsManager = new CustomerAlertsManager($config, null); $customerAlertsManager->removeOldAlerts(10); //10 minute $companyItemCheckListManager = new CompanyItemCheckListManager($config, null); $companyItemCheckListManager->removeOldRowsBySeconds(120); //2 minutes $requestHistoryManager = new RequestHistoryManager($config, null); $requestHistoryManager->removeOldRowsByDays(90); // 90 days $cmsSearchRequestsManager = new CmsSearchRequestsManager($config, null); $cmsSearchRequestsManager->removeOldRowsByDays(90); // 90 days //chaching cba rates for all exchanges $rates = getCbaRates(); if ($rates !== false) { $datetime = $rates[1]; $cbaRatesManager = new CbaRatesManager($config, null); $selectByField = $cbaRatesManager->selectByField('cba_datetime', $datetime); if (empty($selectByField)) {