PDA

View Full Version : Create New User using API in VB5


richieferns
10-29-2020, 08:59 AM
Hi
I am new to VBulletin. I have managed to Auto Login to vBulletin from external website using PHP script
reference link https://forum.vbulletin.com/blogs/david-grove/4327147-how-to-log-into-vbulletin-from-an-external-script-on-your-website

Now i wanted to Create a new User using API but not able to find an thread related to this wrt VB5 nor any document related to it.
Where can i find document on using Vbulletin 5 API.


Thank you

--------------- Added 1603967608 at 1603967608 ---------------

Hi
I have managed to Create a new User.
Here is the working script
<?php

try
{

// Path to your vBulletin installation
$vbpath = '/var/www/vbulletin/forums';

// Start script
define('CSRF_PROTECTION', false);
require_once($vbpath . '/includes/vb5/autoloader.php');
vB5_Autoloader::register($vbpath);
vB5_Frontend_Application::init('config.php');

$userName = 'dummyName';
$password = 'dummyPassword';
$email = 'dummy@dummy.com';
$userGroupID = 2;


$dmuser =& datamanager_init('user', $vbulletin);
$dmuser->set('username', $userName);
$dmuser->set('email', $email);
//$dmuser->set('password', 'verysecret');
$dmuser->set('usergroupid', $userGroupID);


if (count($dmuser->errors))
{
for($i=0; $i<count($dmuser->errors); $i++)
{
echo "ERROR{$i}:{$dmuser->errors[$i]}\n";
}
}
else
{
$newuserid = $dmuser->save();
echo $newuserid . "\n";
$loginlib = vB_Library::instance('login');
$loginlib->setPassword($newuserid, $password,
array('passwordhistorylength' => 0),
array('passwordhistory' => true));
}
}
catch (vB_Exception_Database $e)
{
echo "An exception: " . $e->getMessage() . "\n";
}
catch (Exception $e)
{
echo "An exception: " . $e->getMessage() . "\n";
}

Thank you