I'm attempting to code a function that will resize an existing custom avatar and save it to the custom avatars table for a user if that user no longer has permissions to use the size they are using.
PHP Code:
function check_avatar($user)
{
global $vbulletin;
$permissions = cache_permissions($user);
// Check to see if user has a custom avatar or is over the limit
$customavatar = $vbulletin->db->query_first("SELECT width, height FROM customavatar WHERE userid=" . $user['userid']);
if (!$customavatar) {return true;}
if (($customavatar['width'] < $user['permissions']['avatarmaxwidth']) AND ($customavatar['height'] < $user['permissions']['avatarmaxheight'])) {return true;}
// If not, upload new avatar from the old image
require_once(DIR . '/includes/class_upload.php');
require_once(DIR . '/includes/class_image.php');
$upload = new vB_Upload_Userpic($vbulletin);
$upload->data =& datamanager_init('Userpic_Avatar', $vbulletin, ERRTYPE_STANDARD, 'userpic');
$upload->image =& vB_Image::fetch_library($vbulletin);
$upload->maxwidth = $user['permissions']['avatarmaxwidth'];
$upload->maxheight = $user['permissions']['avatarmaxheight'];
$upload->maxuploadsize = $user['permissions']['avatarmaxsize'];
$upload->allowanimation = ($user['permissions']['genericpermissions'] & $vbulletin->bf_ugp_genericpermissions['cananimateavatar']) ? true : false;
// Use the previous image URL
$url = 'http://MYFORUMURL/image.php?u=' . $user['userid'];
if (!$upload->process_upload($url)) {standard_error('MERGH!<br /><br />' . $url . '<br />' . $upload->fetch_error(), false);}
return false;
}
Unfortunately, it's telling me that it's an invalid file. >.> Of course, MYFORUMURL is my forum URL.
This is the output I get from my Standard Error there:
Advice, please?