Recordad que para pedir soporte alguno, debéis facilitar los datos de soporte oportunos por favor, mirad aquí y leer las Normas generales del foro, esto nos servirá de ayuda para dar el mejor soporte..

Gracias.

La Administración de phpBB España.

Permisos para responder solo Moderadores y usuario creador

Guías, manuales, tutoriales, etc. sobre phpBB2 y otros sistemas.
Foro de lectura, las dudas en el Foro oportuno por favor.
Cerrado

0
No hay votos
 
Votos totales: 0

Avatar de Usuario
ThE KuKa
Administrador
Mensajes: 10374
Registrado: 04 Ene 2004, 19:27
Género:
Edad: 49

Permisos para responder solo Moderadores y usuario creador

#1

Mensaje por ThE KuKa »

Hola a todos.

Estamos creando un foro para una empresa.
Este foro va a ser de caracter privado y con algunas particularidades. Casi todas las tengo solucionadas menos una:

En el foro solo podrán responder a los mensajes que plantean los usuarios los moderadores, pero tambien necesitamos que el creador del mensaje pueda seguir respondiendo.

He puesto (en los permisos del foro) que los mensajes solo los puedan responder los moderadores, pero así no pueden responder los que han creado el post.

¿Hay alguna forma de hacer lo que quiero desde el panel de administracion de phpbb o se ha de programar algo?
Si hay que programar algo (que será lo más seguro), ¿alguién sabe donde y que se ha de programar?

Muchas gracias por su tiempo.[/quoteicy]
Respuesta de yoseman ante dicha duda...
Bien, para hacer eso hay que retocar un pelín el script posting.php

Abrir el archivo posting.php

Localizar el siguiente código, más o menos en la línea 185:

Código: Seleccionar todo

	case 'reply':
	case 'vote':
		if ( empty( $topic_id) )
		{
			message_die(GENERAL_MESSAGE, $lang['No_topic_id']);
		}

		$sql = "SELECT f.*, t.topic_status, t.topic_title  
			FROM " . FORUMS_TABLE . " f, " . TOPICS_TABLE . " t
			WHERE t.topic_id = $topic_id
				AND f.forum_id = t.forum_id";
		break;

	case 'quote':
Y remplazar por esto (seleccionas TODO el código anterior y lo reemplazas por todo lo que pongo a continuación)

Código: Seleccionar todo

	case 'reply':
	case 'vote':
		if ( empty( $topic_id) )
		{
			message_die(GENERAL_MESSAGE, $lang['No_topic_id']);
		}
		
		$sql ="SELECT topic_poster FROM ".TOPICS_TABLE." WHERE topic_id=".$topic_id;
		if ( $result = $db->sql_query($sql) )
		{
			$post_info = $db->sql_fetchrow($result);
			$db->sql_freeresult($result);
		}
		
		if ( $userdata['user_id'] != $post_info['topic_poster'] )
		{
			if ( $userdata['user_level'] != MOD && $userdata['user_level'] != ADMIN ) 
			message_die(GENERAL_MESSAGE, "Lo sentimos pero sólo el usuario que abrió la consulta o moderadores pueden responder");
		}

		$sql = "SELECT f.*, t.topic_status, t.topic_title  
			FROM " . FORUMS_TABLE . " f, " . TOPICS_TABLE . " t
			WHERE t.topic_id = $topic_id
				AND f.forum_id = t.forum_id";
		break;

	case 'quote':
		if ( empty($post_id) )
		{
			message_die(GENERAL_MESSAGE, $lang['No_post_id']);
		}
		$sql ="SELECT topic_id FROM ".POSTS_TABLE." WHERE post_id=".$post_id;
		if ( $result = $db->sql_query($sql) )
		{
			$post_info = $db->sql_fetchrow($result);
			$db->sql_freeresult($result);
			$topic_id = $post_info['topic_id'];
		}
		$sql ="SELECT topic_poster FROM ".TOPICS_TABLE." WHERE topic_id=".$topic_id;
		if ( $result = $db->sql_query($sql) )
		{
			$post_info = $db->sql_fetchrow($result);
			$db->sql_freeresult($result);
			
		}
		
		if ( $userdata['user_id'] != $post_info['topic_poster'] )
		{
			if ( $userdata['user_level'] != MOD && $userdata['user_level'] != ADMIN ) 
			message_die(GENERAL_MESSAGE, "Lo sentimos pero sólo el usuario que abrió la consulta o moderadores pueden responder");
		}
No lo he testeado al 100%, pero las pruebas que hecho no parece que se me haya escapado ningún error. Aviso que esas modificaciones las he hecho yo, no son de ningún MOD, pero bueno supongo que no te importará :)

Salu2

📌 Raul [ThE KuKa] en phpBB 📌
✅ Jr. Extension Validator - Jr. Styles Validator - Style Customisations - Translator - International Support Team
✅

Si te gustan mis estilos, traducciones, etc. y quieres mostrar algo de aprecio, no dudes en hacer una donación Imagen
:flag_es: phpBB España - En línea desde 2003 :heart:



Cerrado

Volver a “Guías, manuales, tutoriales, ayuda, sobre phpBB 2 y otros”