如果我在jomsocial的主页上,我可以通过FB登录网站,
但是当我在网站的页面上时,如果我想尝试使用该按钮,则无法将facebook的弹出窗口登录。
请帮忙
提前致谢
戴夫
答案 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();
}
}