(Solucionado) Llamar una pagina de mensaje ERROR

Masterock Seguir

Beta
¡Usuario con pocos negocios! ¡Utiliza siempre saldo de Forobeta!
Desde
27 Nov 2008
Mensajes
44
Buenas, de nuevo yo por aquí :p

Bueno, resulta que estoy modificando un hack, deben conocerlo es el [AJAX] Post Thank You Hack - vBulletin.org Forum, pero resulta que este tiene una opción de "Máximo de gracias por días", es hay donde estoy aplicando una modificación, resulta que cuando se cumple el numero de gracias diarios, este esconde el botón, lo que yo quiero hacer es que no lo esconda, si no que coloque otro link que lo dirija a una pagina que le muestre al usuario que se le acabaron las gracias.

La cosa es que tiene que se a través de un link, es decir cuando el usuario de click en el botón gracias este lo lleve a la plantilla.

Como debo colocar el link?

No quiero que me lo hagan, quiero que me guíen, se que este hack tiene una función que le dice si puede dar gracias o no, se lo que tengo que modificar para que no muestre la plantilla del botón y se dirija a otra plantilla con el link.


Se que vbulletin tiene unas plantillas predeterminadas de "Error", pero no se llamarlas dese un link.

PHP:
eval(standard_error($vbphrase['canthx']));

Muchas gracias por su tiempo.
 

imported_Jhonnyf

Épsilon
¡Usuario con pocos negocios! ¡Utiliza siempre saldo de Forobeta!
Desde
6 Sep 2008
Mensajes
959
Re: Llamar una pagina de mensaje ERROR

pues lo que yo haria es buscar la plantilla o codigo o enganche o lo que sea que use para poner ese boton, ahi buscar la condicion que permite mostrarlo/ocultarlo y ponerle un else para mostrar otro link
******************************
si sigues el PHP
print_no_permission(); //mensaje de NO hay permisos

y la funcion para mostrar errores es
PHP:
/** @param    string    Error message
* @param    string    Optional HTML code to insert in the <head> of the error page
* @param    boolean    If true, set the visitor's status on WOL to error page
* @param    string    Optional template to force the display to use. Ignored if showing a lite error
*/
function standard_error($error = '', $headinsert = '', $savebadlocation = true, $override_template = '')
 

Masterock

Beta
¡Usuario con pocos negocios! ¡Utiliza siempre saldo de Forobeta!
Desde
27 Nov 2008
Mensajes
44
Re: Llamar una pagina de mensaje ERROR

pues lo que yo haria es buscar la plantilla o codigo o enganche o lo que sea que use para poner ese boton, ahi buscar la condicion que permite mostrarlo/ocultarlo y ponerle un else para mostrar otro link

Si ya la encontre :p...

Específicamente es:

PHP:
if (can_thank_this_post($post, $thread['isdeleted']) && !thanked_already($post))
	{
		$display_thanks_image = '';
	}

	eval('$template_hook[postbit_controls] .= " ' . fetch_template('post_thanks_button') . '";');

La idea seria cambia 'post_thanks_button' por 'no-post_thanks_button'.

este template tiene

PHP:
<a href="post_thanks.php?$session[sessionurl]do=post_thanks_add&amp;p=$post[postid]&amp;securitytoken=$bbuserinfo[securitytoken]" id="post_thanks_button_$post[postid]"<if condition="$vboptions[disable_ajax] != 2"> onclick="return post_thanks_give($post[postid], <if condition="$vboptions[post_groan_integrate]">true<else />false</if>);"</if> <if condition="$display_thanks_image == 'none'">style="display:none"</if> rel="nofollow"><img src="$stylevar[imgdir_button]/post_thanks.gif" alt="$vbphrase[post_thanks_thanks]" border="0" /></a>

la idea es cambiar ese Link, por uno que me dirija a un mensaje de error.

Como coloco ese link?
 

imported_Jhonnyf

Épsilon
¡Usuario con pocos negocios! ¡Utiliza siempre saldo de Forobeta!
Desde
6 Sep 2008
Mensajes
959
Re: Llamar una pagina de mensaje ERROR

La idea seria cambia 'post_thanks_button' por 'no-post_thanks_button'.


entonces

PHP:
if (can_thank_this_post($post, $thread['isdeleted']) && !thanked_already($post))
{
    $display_thanks_image = '';
    eval('$template_hook[postbit_controls] .= " ' . fetch_template('no-post_thanks_button') . '";');
}
else
{
    eval('$template_hook[postbit_controls] .= " ' . fetch_template('post_thanks_button') . '";');
}
 

Masterock

Beta
¡Usuario con pocos negocios! ¡Utiliza siempre saldo de Forobeta!
Desde
27 Nov 2008
Mensajes
44
Re: Llamar una pagina de mensaje ERROR

PHP:
if (can_thank_this_post($post, $thread['isdeleted']) && !thanked_already($post))
{
    $display_thanks_image = '';
    eval('$template_hook[postbit_controls] .= " ' . fetch_template('no-post_thanks_button') . '";');
}
else
{
    eval('$template_hook[postbit_controls] .= " ' . fetch_template('post_thanks_button') . '";');
}

No, esa parte la se :p. Lo que pasa es que el template que colocare hay tendrá el botón con un link, ese link es el que llevara al mensaje de error, pero no se como colocarlo.

Necesito un ejemplo de un link que lleve a una pagina de error.

Creo que les complique la vida colocando mi historia :p:S
 

imported_Jhonnyf

Épsilon
¡Usuario con pocos negocios! ¡Utiliza siempre saldo de Forobeta!
Desde
6 Sep 2008
Mensajes
959
Re: Llamar una pagina de mensaje ERROR

eso es HTML simple, osea poner un link apuntando a otra web

http://www.w3schools.com/TAGS/tag_a.asp

ahora que si lo que quieres es una pagina de error, pues puedes usar el misc.php y agregarle en un hook que te acepte un nuevo parametro en la url

misc.php?do=mierrorpersonal

y ahi poner las lineas para mostrar el error
 

Masterock

Beta
¡Usuario con pocos negocios! ¡Utiliza siempre saldo de Forobeta!
Desde
27 Nov 2008
Mensajes
44
Re: Llamar una pagina de mensaje ERROR

eso es HTML simple, osea poner un link apuntando a otra web

HTML a tag

ahora que si lo que quieres es una pagina de error, pues puedes usar el misc.php y agregarle en un hook que te acepte un nuevo parametro en la url

misc.php?do=mierrorpersonal

y ahi poner las lineas para mostrar el error


mmm.. si esta buena la idea, aunque buscaba una mas sencilla, en fin,

creo que en misc.php?do=canthx

podría ser algo asi?

PHP:
if ($_REQUEST['do'] == 'canthx')
{	
	eval(standard_error($vbphrase['canthx'])); 
}

el problema con esto es que tendría que modificar cada ves que actualice el vb :S, mas específicamente, cuando en la actualizacion incluya este archivo, y ahora con la 4 encima :S

Existe alguna forma de colocar un link que me dirija a una plantilla de error?
a cualquiera de las que ya están echas, yo tomar este ejemplo, recrear una plantilla nueva y re-dirigirla a esta nueva plantilla con mi mensaje personalizado...

Gracias por tu ayuda amigo ;)
 

imported_Jhonnyf

Épsilon
¡Usuario con pocos negocios! ¡Utiliza siempre saldo de Forobeta!
Desde
6 Sep 2008
Mensajes
959
Re: Llamar una pagina de mensaje ERROR

crea un plugin y enganchalo en
misc_start

y ponle este codigo
PHP:
if ($_REQUEST['do'] == 'canthx') 
{     
    eval(standard_error($vbphrase['canthx'])); 
exit(); 
}
con eso vBulletin usando su sistema de plugin se encargará de ponerlo en misc.php sin necesidad de editar el archivo fisico y por tanto sin importar la version de vbulletin que tengas o si actualizas o reemplazas el misc.php; siempre se va a agregar esa linea al misc.php en tiempo de ejecucion
 

Masterock

Beta
¡Usuario con pocos negocios! ¡Utiliza siempre saldo de Forobeta!
Desde
27 Nov 2008
Mensajes
44
Re: Llamar una pagina de mensaje ERROR

Muchas gracias amigo, cuando termine terminar la modificación les informare de ella para quienquiera integrarla a su vb + post thanks :D
 

imported_Jhonnyf

Épsilon
¡Usuario con pocos negocios! ¡Utiliza siempre saldo de Forobeta!
Desde
6 Sep 2008
Mensajes
959
Re: Llamar una pagina de mensaje ERROR

Muchas gracias amigo, cuando termine terminar la modificación les informare de ella para quienquiera integrarla a su vb + post thanks :D
ok, pero como consejo general trata de ser lo más especifico posible cuando hagas una pregunta, si es posible usa imagenes o todo lo necesario para que el resto podamos enterder (si, soy bruto)
 

Masterock

Beta
¡Usuario con pocos negocios! ¡Utiliza siempre saldo de Forobeta!
Desde
27 Nov 2008
Mensajes
44
Re: Llamar una pagina de mensaje ERROR

ok, pero como consejo general trata de ser lo más especifico posible cuando hagas una pregunta, si es posible usa imagenes o todo lo necesario para que el resto podamos enterder (si, soy bruto)

jejeje ok, lo que pasa es que aveces ni yo mismo me entiendo jejeje :p
para la prox, me la tomare con calma al escribir :p
 
Arriba