Please upgrade here. These earlier versions are no longer being updated and have security issues.
HackerOne users: Testing against this community violates our program's Terms of Service and will result in your bounty being denied.

Getting ProxyConnect to work with CakePHP and Croogo

edited February 2011 in Vanilla 2.0 - 2.8
I have been trying in vain for many hours to get this working. I have scoured the forums and cannot for the life of me get this to work. Any illumination on the matter would be much appreciated.

I am running:
Vanilla version 2.0.17.8
ProxyConnect version 1.8.4
Cakephp Version 1.3.3
Croogo Version 1.3.2 (cakephp CMS)

I have installed the Vanilla forum in a subfolder app/webroot/vanilla

Install goes smoothly and I upload the proxyconnect plugin into the vanilla plugins folder. I activate it, and then load the following urls:

*Main Site URL The URL of your website where you will use ProxyConnect
http://localhost:8888/cmrs

*Authenticate URL The behind-the-scenes URL that shares identity information with Vanilla
http://localhost:8888/cmrs/users/authenticate

*Registration URL The URL where users can sign up for new accounts on your site
http://localhost:8888/cmrs/register

*Sign-In URL The URL where users sign in on your site
http://localhost:8888/cmrs/users/login?vanilla=1

*Sign-Out URL The URL where users sign out of your site
http://localhost:8888/cmrs/users/logout?vanilla=1

I have created an action in my users_controller called authenticate()

public function authenticate() {
$this->layout = 'ajax';
$this->header('Content-Type: text/plain');
if($this->Auth->user()) {
$data = $this->Auth->user();
$this->set('data', $data);
}
}

I have created a view authenticate.ctp which outputs the data correctly if you access it directly and you are logged in

<?php
if(isset($data)) {
echo 'UniqueID='.$data['User']['id']."\n";
echo 'Name='.$data['User']['username']."\n";
echo 'Email='.$data['User']['email']."\n";
echo 'TransientKey='."\n";
echo 'DateOfBirth='."\n";
echo 'Gender=';
}
?>

Outputs

UniqueID=1
Name=admin
Email=you@your-site.com
TransientKey=
DateOfBirth=
Gender=

In vanilla config.php I have set

$Configuration['Garden']['Cookie']['Domain'] = '.localhost';

In Cakephp bootstrap.php I have set

ini_set('session.cookie_domain', '.localhost');

So, after all that when I click on signin from vanilla I get redirected to the cake app login and when I login I am not logged in in Vanilla Forum.

When I logout from Vanilla I get redirected to the cake app and am logged out from that but not from Vanilla.

Any suggestions would be greatly appreciated.

Comments

  • So, as it turns out I was doing everything correct except one little thing!
    The empty strings in the authenticate output were causing the problem. Get rid of those and voila! It works.
Sign In or Register to comment.