[Desarrollo MyBB]  Obtener usuario..
Estaba viendo este plugin https://github.com/euantor/User-Info-Anywhere Se que no es creación mía, pero lo quiero usar & adaptar a mis gustos. Pero...

Estaba viendo este plugin https://github.com/euantor/User-Info-Anywhere
Se que no es creación mía, pero lo quiero usar & adaptar a mis gustos.

Pero tengo un problema, es que al momento de obtener el usuario no funciona..

Dejo la parte del código donde este obtiene el usuario:

$plugins->add_hook('xmlhttp', 'userInfoAnywhere_xmlhttp');
function userInfoAnywhere_xmlhttp()
{
	global $mybb;

	if ($mybb->input['action'] == 'hovercard' AND $mybb->input['user'])
	{
		global $db, $templates, $lang;

		if (!$lang->userInfoAnywhere)
		{
			$lang->load('userInfoAnywhere');
		}

		$user = get_user((int) $mybb->input['user']);

		$hovercard = array(
			'uid'			=>	$user['uid'],
			'username'		=>	$user['username'],
			'profileLink'	=>	get_profile_link((int) $user['uid']),
			'avatar'		=>	$user['avatar'],
			'posts'			=>	$user['postnum'],
			'registered'	=>	$user['regdate'],
			'online_status'	=>	'online',
			);

		eval("\$hovercardOutput .= \"".$templates->get('userInfoAnywhere_hovercard')."\";");
		echo $hovercardOutput;
	}
}

Pero en esta parte esta fallando algo:

$user = get_user((int) $mybb->input['user']);
..

Les dejo también el código del JS que usa:

Event.observe(window, 'load', function() {
	var uid = 0;
	var hovercardCache = new Object;
	$$('a[href*="member.php?action=profile"]').each(function(elem) {
		Event.observe(elem, 'mouseover', function() {
			uid = elem.getAttribute('href');
			uid = uid.substr(54);

			if (!hovercardCache[uid])
			{
				new Ajax.Request('xmlhttp.php?action=hovercard',
				{
					method: 'get',
					parameters: { user: uid },
					onSuccess: function(transport) {
						hovercardCache[uid] = transport.responseText;

						$$('body')[0].insert({
							bottom: hovercardCache[uid]
						});
					}
				});
			}
			else
			{
				$$('body')[0].insert({
					bottom: hovercardCache[uid]
				});
			}

			Element.clonePosition($('hovercard-user-' + uid), elem, {
				setWidth: false,
				setHeight: false,
				offSetLeft: '10'
			})

			console.log(hovercardCache);
		});
	});
});

Muestra todo, menos los datos de usuario..

De antemano, gracias.
¿Usas Google SEO? Yo escribi algo similar y en mi opinion es mejor editar el functions.php en lugar de intentar adivinar la url como lo hace este plugin.
    $$('a[href*="member.php?action=profile"]').each(function(elem) {
        Event.observe(elem, 'mouseover', function() {
            uid = elem.getAttribute('href');
            uid = uid.substr(54);
Omar G.
Última modificación: 13 Jan, 2013, 11:52 am por nicods_20055.
No, no uso Google SEO, bueno en este caso no.
Por eso lo deje de igual manera, solo que no toma los ID de lo usuarios.

Como lo podría hacer en este caso?
Si no usas Google SEO no tengo idea, alguna vez ha funcionado el plugin?
Omar G.
Si funciona, pero no me toma el ID con el cual se supone que obtiene los datos de usuario.

Como sería en el caso de usar Google SEO?
Omar G.
Última modificación: 13 Jan, 2013, 7:39 pm por nicods_20055.
Última modificación: 13 Jan, 2013, 8:07 pm por V1K1NGO.
Intenta cambiar 54 por 24, 24 + "http://example.com/", o un numero, creo que ese 54 es el problema.

No se de JS pero me parece que esta cortando la url para obtener el UID.
http://example.com/member.php?action=profile&uid=1
Omar G.
Colaboradores
Omar G.
This forum uses Lukasz Tkacz MyBB addons.