/** * Load customer user info * * @throws \Magento\Framework\Exception * @return \Inchoo\SocialConnect\Model\Facebook\Info\User */ public function loadSelf() { if (!$this->_customerSession->isLoggedIn()) { if (!$this->_customer->getId()) { throw new \Magento\Framework\Exception(__('Could not load self since customer isn\'t logged in')); } } $this->_customer = $this->_customerSession->getCustomer(); if (!$this->_customer->getId()) { throw new \Magento\Framework\Exception(__('Could not load by customer id')); } if (!($socialconnectFid = $this->_customer->getInchooSocialconnectFid()) || !($socialconnectFtoken = $this->_customer->getInchooSocialconnectFtoken())) { throw new \Magento\Framework\Exception(__('Could not retrieve token by customer id')); } $this->setAccessToken($socialconnectFtoken); $this->_load(); return $this; }
/** * @param \Magento\Customer\Model\Customer $customer */ public function disconnect(\Magento\Customer\Model\Customer $customer) { // TODO: Move to \Inchoo\SocialConnect\Model\Facebook\Info\User try { $this->_client->setAccessToken(unserialize($customer->getInchooSocialconnectFtoken())); $this->_client->api('/me/permissions', 'DELETE'); } catch (Exception $e) { } $pictureFilename = $this->_storeManager->getStore()->getBaseUrl(\Magento\Framework\UrlInterface::URL_TYPE_MEDIA) . '/inchoo/socialconnect/facebook/' . $customer->getInchooSocialconnectFid(); if (file_exists($pictureFilename)) { @unlink($pictureFilename); } $customer->setInchooSocialconnectFid(null)->setInchooSocialconnectFtoken(null)->save(); }