SilVert |
05-08-2006 03:09 PM |
Quote:
Originally Posted by Jayphen
Hmm after installing this it all seems to work fine (with the exception of the error when I log in myself.. I get that user collision error)
However, at random intervals, users are experiencing errors saying 'this post is identical to a post you have made in the past 5 minutes.. returning you to that thread now' .. and alot of posts seem to be going through twice.
edit: It only happens with the plugins installed
|
sadly i dont know much abotu the plugin version.. i have only looked at the code, nothign else.... johnmount has not posted back abotu a beta of his plugin... :(
Quote:
Originally Posted by silkie
I went into phpmyadmin and looked at my gallery db and in the externalid table I have 0 users and when I look at the users table I have 2 users. guest with is id 5 and silkie with id 19. shouldn't my id as admin be id 1?
|
if i am understanding this correctly, the integration script is not working(duhhhh ;))... when it registeres the users, it should throw the VBB id in the externalid's table of Gallery2. which would mean that something is defined wrong in that upper section where you define paths. without knowing your system better/being in there it is hard for me to guess(sadly).
here is my script:
PHP Code:
<?php
// ####################### SET PHP ENVIRONMENT ########################### error_reporting(E_ALL & ~E_NOTICE);
// #################### DEFINE IMPORTANT CONSTANTS ####################### define('NO_REGISTER_GLOBALS', 1); define('THIS_SCRIPT', 'gallery'); // change this depending on your filename
// ################### PRE-CACHE TEMPLATES AND DATA ###################### // get special phrase groups $phrasegroups = array(
);
// get special data templates from the datastore $specialtemplates = array(
);
// pre-cache templates used by all actions $globaltemplates = array( 'gallery', );
// pre-cache templates used by specific actions $actiontemplates = array(
);
// ######################### REQUIRE BACK-END ############################
require_once('./global.php');
// ####################################################################### // ######################## START MAIN SCRIPT ############################ // #######################################################################
$navbits = array(); $navbits[$parent] = 'Gallery'; error_reporting(E_ALL );
$navbits = construct_navbits($navbits); eval('$navbar = "' . fetch_template('navbar') . '";');
// ####################################################################### // ###################### Begin G2 INTEGRATION CODE ###################### // #######################################################################
$data = runGallery(); $data['title'] = (isset($data['title']) && !empty($data['title'])) ? $data['title'] : 'Gallery';
function runGallery() { global $vbulletin, $userinfo; require_once('/home/httpd/vhosts/racersden.net/httpdocs/gallery/embed.php');
$data = array();
// If it's an anonymous user, set the g2 activeUser to null $uid = $vbulletin->userinfo['userid'] = 0 ? '' : $vbulletin->userinfo['userid'];
// initiate G2 // You need to edit the following 4 lines to suit your VB3 & G2 installations // This is set up for an install that looks like: // public_html/VB/<vb files> // public_html/gallery2/<gallery2 files> // and also setup for a VB3 template name of 'gallery2'. If you have any // differences, make those changes here! // You might need to change 'loginRedirect' if you have your VB3 setup to // where index.php is not the root page of VB3... Like if you've changed it // to forums.php or something of the like.
$ret = GalleryEmbed::init(array('embedUri' => 'gallery.php', 'g2Uri' => '/gallery/', 'loginRedirect' => 'index.php', 'activeUserId' => $uid));
if ($vbulletin->userinfo[usergroupid] == 5 or $vbulletin->userinfo[usergroupid] == 6 or $vbulletin->userinfo[usergroupid] == 7 or $vbulletin->userinfo[usergroupid] == 11 or $vbulletin->userinfo[usergroupid] == 12) {
if ($ret) { if ($ret->getErrorCode() & ERROR_MISSING_OBJECT) { // Check if there's no G2 user mapped to the activeUserId $ret = GalleryEmbed::isExternalIdMapped($uid, 'GalleryUser'); if ($ret && ($ret->getErrorCode() & ERROR_MISSING_OBJECT)) { // User not mapped, create G2 user now // Get Arguments for the new user: $args['fullname'] = $vbulletin->userinfo['username']; $args['username'] = $vbulletin->userinfo['username']; $args['hashedpassword'] = $vbulletin->userinfo['password']; $args['hashmethod'] = 'md5'; $args['email'] = $vbulletin->userinfo['email']; $args['language'] = $vbulletin->userinfo['lang_code']; $args['creationtimestamp'] = $vbulletin->userinfo['joindate'];
$retcreate = GalleryEmbed :: createUser($uid, $args); if ($retcreate) { echo '<HR>line: ' . $__LINE__ . ', Failed to create G2 user with extId ['.$uid.']. Here is the error message from G2: <br />'.$retcreate->getAsHtml(); return false; } $ret = GalleryEmbed::checkActiveUser($uid); if ($ret) { print $ret->getAsHtml(); return false; } } else { echo '<HR>line: '.__LINE__.', G2 did not return a success status. Here is the error message from G2: <br />'. $ret->getAsHtml(); return false; } } else { echo '<HR>line: '.__LINE__.', G2 did not return a success status. Here is the error message from G2: <br />'.$ret->getAsHtml(); return false; } } }
// user interface: disable sidebar in G2 and get it as separate HTML to put it into a block //GalleryCapabilities::set('showSidebar', true);
// handle the G2 request $g2moddata = GalleryEmbed::handleRequest();
// show error message if isDone is not defined if (!isset($g2moddata['isDone'])) { $data['bodyHtml'] = 'isDone is not defined, something very bad must have happened.'; return $data; } // die if it was a binary data (image) request if ($g2moddata['isDone']) { exit; /* uploads module does this too */ }
// put the body html from G2 into the xaraya template $data['bodyHtml'] = isset($g2moddata['bodyHtml']) ? $g2moddata['bodyHtml'] : '';
// get the page title, javascript and css links from the <head> html from G2 $title = ''; $javascript = array(); $css = array();
if (isset($g2moddata['headHtml'])) { list($data['title'], $css, $javascript) = GalleryEmbed::parseHead($g2moddata['headHtml']); $data['headHtml'] = $g2moddata['headHtml']; }
/* Add G2 javascript */ if (!empty($javascript)) { foreach ($javascript as $script) { $data['javascript'] .= "\n".$script; } }
/* Add G2 css */ if (!empty($css)) { foreach ($css as $style) { $data['css'] .= "\n".$style; } }
// sidebar block if (isset($g2moddata['sidebarHtml']) && !empty($g2moddata['sidebarHtml'])) { $data['sidebarHtml'] = $g2moddata['sidebarHtml']; }
return $data; } // ####################################################################### // ####################### End G2 integration code ####################### // #######################################################################
eval('print_output("' . fetch_template('gallery') . '");');
?>
forum is in racersden.net/forum
gallery is in racersden.net/gallery
template name is gallery
integration name is gallery.php
see if this helps you at all :)
For users using the ingegration script, i have put in the code to allow you to get vbb groups's to create accounts, all others will just be looking on as guests... the code needs to be put in after this code:
PHP Code:
$ret = GalleryEmbed::init(array('embedUri' => 'gallery.php', 'g2Uri' => '/gallery/', 'loginRedirect' => 'index.php', 'activeUserId' => $uid));
the code is:
PHP Code:
if ($vbulletin->userinfo[usergroupid] == 5 or $vbulletin->userinfo[usergroupid] == 6 or $vbulletin->userinfo[usergroupid] == 7 or $vbulletin->userinfo[usergroupid] == 11 or $vbulletin->userinfo[usergroupid] == 12) {
replace the number(for my code it is 5, 6, 7, 11, and 12) with the VBB group number of your board. this can all be found in the adminCP if you look at the usergroups.
you will also need to put a "}" below the 2nd else statement, so it shoudl look like this:
PHP Code:
else { echo '<HR>line: '.__LINE__.', G2 did not return a success status. Here is the error message from G2: <br />'.$ret->getAsHtml(); return false; } } }
a bit confusing to explain, but its a pretty simple edit to the script :)
|