jomsocial模块facebook连接不在其他页面上工作

时间:2011-03-28 06:29:49

标签: joomla facebook

如果我在jomsocial的主页上,我可以通过FB登录网站,

但是当我在网站的页面上时,如果我想尝试使用该按钮,则无法将facebook的弹出窗口登录。

请帮忙

提前致谢

戴夫

3 个答案:

答案 0 :(得分:0)

这通常是由于另一个扩展程序除了JomSocial之外还试图加载Facebook库时引起的。在页面的HTML中搜索appId。这应该是您在JomSocial中使用的Facebook应用程序ID,它应该只在页面中出现一次,如: appId:'12345'

如果它出现两次,或者两次都不同,那么在与Facebook沟通时可能会出现混乱。

还要查找“featureloader.js.php”的任何实例。这是Facebook非常古老的库,与新版本(all.js)不兼容。如果它在那里,这是你必须删除的另一个扩展。

最后,如果您使用JFBConnect这样的扩展程序,它具有比JomSocial更多的Facebook功能和特性,您只需要从JomSocial中删除API /密钥并像正常一样配置JFBConnect。这将禁用JomSocial,因此它不会与JFBConnect冲突。

有关JFBConnect的更多信息,请参阅: Joomla Facebook Connect

答案 1 :(得分:0)

我找到了解决问题的方法,

非常感谢!!!!

只有appid在代码中缺失。

答案 2 :(得分:0)

如果你的Joomsocial组件已经老了,那么我解决了代码级别的问题 这样 在函数中的文件组件\ com_community \ controllers \ connect.php中更改代码,如此

           function ajaxUpdate{
           if(){
             //same as it is
            }
           } else {

        $my = CFactory::getUser($connectTable->userid);
        //$myuser = JFactory::getUser($connectTable->userid);
        $myuser = new JUser($connectTable->userid);
        if (COwnerHelper::isCommunityAdmin($connectTable->userid)) {

            $tmpl = new CTemplate();
            $content = $tmpl->fetch('facebook.link.notallowed');
            $buttons = '<input type="button" value="' . JText::_('COM_COMMUNITY_BUTTON_CLOSE_BUTTON') . '" class="btn" onclick="cWindowHide();" />';
            $response->addScriptCall('cWindowAddContent', $content, $buttons);
            return $response->sendResponse();
        }else{

        }

        // Generate a joomla password format for the user so we can log them in.
        $password = JUserHelper::genRandomPassword();

        $userData = array();
        $userData['password'] = $password;
        $userData['password2'] = $password;

        if (!$myuser->bind($userData)) {
            echo $myuser->getError(); die();
        }
        if (!$myuser->save()) {
            echo $myuser->getError(); die();
        }


        //$my->bind($userData);




        // User object must be saved again so the password change get's reflected.
        //$my->save();
        //$myuser->save();


        $mainframe->login(array('username' => $my->username, 'password' => $password));

        if ($config->get('fbloginimportprofile')) {

            $this->_facebook->mapProfile($userInfo, $my->id);

        }

        $tmpl = new CTemplate();
        $tmpl->set('my', $my);
        $tmpl->set('userInfo', $userInfo);


        $content = $tmpl->fetch('facebook.existinguser');
        //echo "<pre>"; print_r($content);  
        $actions = '<input type="button" class="btn btn-primary" onclick="joms.connect.importData();" value="' . JText::_('COM_COMMUNITY_CONTINUE_BUTTON') . '"/>';

        // Update page token since the userid is changed now.
        $session = JFactory::getSession();
        $token = $session->getFormToken(false);

        $response->addScriptCall('jax_token_var="' . $token . '";');

        // Add invite button
        $response->addAssign('cwin_logo', 'innerHTML', $config->get('sitename'));
        $response->addScriptCall('cWindowAddContent', $content, $actions);
        //die();
        $response->sendResponse();
    }

}

相关问题