예제 #1
0
 /**
  * _connect() method
  *
  * @param array $aParams
  * @return array
  */
 private function _connect($sType, array $aParams)
 {
     $aAssign = array();
     // include abstract connector
     require_once _FPC_PATH_LIB_CONNECTOR . 'connector-ctrl_class.php';
     // instantiate
     $oConnectorCtrl = new BT_FPCConnectorCtrl($sType);
     // set Module URI
     $aParams['sURI'] = BT_FPCModuleTools::detectHttpUri(_FPC_MODULE_URL . $sType . '-callback.php');
     // get serialized connector data
     BT_FPCModuleTools::getConnectorData();
     // get connector options
     $aParams = array_merge($aParams, $GLOBALS[_FPC_MODULE_NAME . '_CONNECTORS'][$sType]['data']);
     // get logged Customer ID
     $iCustomerId = BT_FPCModuleTools::getCustomerId();
     if (!empty($iCustomerId)) {
         $aParams['iCustomerId'] = $iCustomerId;
     }
     // exec connector
     $aAssign = $oConnectorCtrl->run($aParams);
     unset($oConnectorCtrl);
     return array('tpl' => _FPC_TPL_HOOK_PATH . _FPC_TPL_CONNECTOR_RESPONSE, 'assign' => $aAssign);
 }
예제 #2
0
 /**
  * _displayFooter() method displays buttons in footer
  *
  * @param array $aParams
  * @return array
  */
 private function _displayFooter(array $aParams)
 {
     // set
     $aAssign = array();
     $aAssign['bDisplay'] = false;
     $aAssign['bDisplayBlockInfoAccount'] = (int) FacebookPsConnect::$aConfiguration[_FPC_MODULE_NAME . '_DISPLAY_BLOCK_INFO_ACCOUNT'];
     $aAssign['bDisplayBlockInfoCart'] = (int) FacebookPsConnect::$aConfiguration[_FPC_MODULE_NAME . '_DISPLAY_BLOCK_INFO_CART'];
     // get all configured hooks
     if (array_key_exists($this->sHookType, $GLOBALS[_FPC_MODULE_NAME . '_ZONE']) && self::$bConnectorsActive) {
         // set
         $sContent = '';
         $aAssign['aConnectors'] = $GLOBALS[_FPC_MODULE_NAME . '_CONNECTORS'];
         $aAssign['sConnectorButtonsIncl'] = BT_FPCModuleTools::getTemplatePath(_FPC_PATH_TPL_NAME . _FPC_TPL_HOOK_PATH . _FPC_TPL_CONNECTOR_BUTTONS);
         // use case - footer layout
         if (false !== $GLOBALS[_FPC_MODULE_NAME . '_ZONE']['footer']['data']) {
             $aAssign['aHookConnectors'] = $GLOBALS[_FPC_MODULE_NAME . '_ZONE']['footer']['data'];
             $aAssign['sPosition'] = 'bottom';
             $aAssign['sStyle'] = 'badgeBottom';
             $aAssign['bDisplay'] = true;
             $aAssign['sBackUri'] = self::$sCurrentURI;
             $sContent .= FacebookPsConnect::$oModule->displayModule(_FPC_TPL_HOOK_PATH . _FPC_TPL_CONNECTOR_BUTTONS_JS, $aAssign);
         }
         // use case - customer authentication page layout
         if (false !== $GLOBALS[_FPC_MODULE_NAME . '_ZONE']['authentication']['data'] && (version_compare(_PS_VERSION_, '1.5', '>') && Tools::getValue('controller') == 'authentication' || strstr($_SERVER['SCRIPT_NAME'], 'authentication') || (version_compare(_PS_VERSION_, '1.5', '>') && Tools::getValue('controller') == 'orderopc' || strstr($_SERVER['SCRIPT_NAME'], 'order-opc')))) {
             $aAssign['sStyle'] = '';
             $aAssign['aHookConnectors'] = $GLOBALS[_FPC_MODULE_NAME . '_ZONE']['authentication']['data'];
             $aAssign['bDisplay'] = true;
             $aAssign['sBackUri'] = self::$sCurrentURI;
             if (version_compare(_PS_VERSION_, '1.5', '>') && Tools::getValue('controller') == 'orderopc' || strstr($_SERVER['SCRIPT_NAME'], 'order-opc')) {
                 $aAssign['sPosition'] = 'newaccount';
             } else {
                 $aAssign['sPosition'] = 'authentication';
             }
             // use case on FB friendly permission option
             if (!empty($GLOBALS[_FPC_MODULE_NAME . '_CONNECTORS']['facebook']['data']['activeConnector']) && BT_FPCModuleTools::getCustomerId() == 0) {
                 if (!empty($GLOBALS[_FPC_MODULE_NAME . '_CONNECTORS']['facebook']['data']['permissions'])) {
                     $aAssign['sFriendlyText'] = FacebookPsConnect::$oModule->l('You can use any of the login buttons above to automatically create an account on our shop.', 'hook-display_class') . '.';
                 } else {
                     $aAssign['sDefaultText'] = FacebookPsConnect::$oModule->l('You can use any of the login buttons above to automatically create an account on our shop.', 'hook-display_class') . '.';
                 }
             }
             $sContent .= FacebookPsConnect::$oModule->displayModule(_FPC_TPL_HOOK_PATH . _FPC_TPL_CONNECTOR_BUTTONS_JS, $aAssign);
         }
         // use case - top block user layout iset test for 1.6 hide block
         if (isset($GLOBALS[_FPC_MODULE_NAME . '_ZONE']['blockUser']) && false !== $GLOBALS[_FPC_MODULE_NAME . '_ZONE']['blockUser']['data']) {
             $aAssign['sStyle'] = strtolower(_FPC_MODULE_NAME) . '_mini_button';
             $aAssign['aHookConnectors'] = $GLOBALS[_FPC_MODULE_NAME . '_ZONE']['blockUser']['data'];
             $aAssign['sPosition'] = 'blockUser';
             $aAssign['bDisplay'] = true;
             $aAssign['sBackUri'] = self::$sCurrentURI;
             $sContent .= FacebookPsConnect::$oModule->displayModule(_FPC_TPL_HOOK_PATH . _FPC_TPL_CONNECTOR_BUTTONS_JS, $aAssign);
         }
         $aAssign['sContent'] = $sContent;
     }
     return array('tpl' => _FPC_TPL_HOOK_PATH . _FPC_TPL_CONNECTOR_BUTTONS_CNT, 'assign' => $aAssign);
 }