Und ne Frage zum Watch_Forums MOD

Allgemeiner Support zum phpBB 2 Board und phpBB 2 Modifikationen
Forumsregeln
Auch wenn hier der Support für phpBB 2 weiterhin aufrecht erhalten bleibt, weisen wir darauf hin, dass das phpBB 2 nicht mehr offiziell unterstützt und weiterentwickelt wird!
Antworten
schmidtedv
Beiträge: 607
Registriert: So 13.Feb, 2005 10:46
Wohnort: St. Blasien (seit 01.06)
Kontaktdaten:

Und ne Frage zum Watch_Forums MOD

Beitrag von schmidtedv »

Deine phpBB Version: Vanilla phpBB 2.0.17
MODs: Nein
Dein Wissensstand: Einsteiger
Link zu Deinem Forum: [url]http://[/url]

PHP Version:
MySQL Version:


Was hast Du gemacht, bevor das Problem aufgetreten ist?



Was hast Du bereits versucht um das Problem zu lösen?




Fehlerbeschreibung und Nachricht

Ich hab' in der search.php die Option nach "Beobachteten Beiträgen" zu suchen mittels:

$sql = "SELECT * FROM ". POSTS_TABLE . ", " . TOPICS_WATCH_TABLE . " WHERE ". POSTS_TABLE . ".topic_id = " . TOPICS_WATCH_TABLE . ".topic_id AND " . TOPICS_WATCH_TABLE . ".user_id = " . $userdata['user_id'] . " ORDER BY post_time DESC";

$show_results = "topics";
$sortby = 0;
$sortby_dir = "DESC";

Kann ich den String so erweitern, das er das auch auf die beobachteten Foren erweitert?

Der Code in der viewforum.php ist folgender:

Code: Alles auswählen

if( $userdata['session_logged_in'] )
{
        ( $forum_row['forum_notify'] == '1' ) ? $can_watch_forum = TRUE : $can_watch_forum = FALSE;
	
        $sql = "SELECT notify_status
		FROM " . FORUMS_WATCH_TABLE . "
		WHERE forum_id = $forum_id
			AND user_id = " . $userdata['user_id'];
	if( !($result = $db->sql_query($sql)) )
	{
		message_die(GENERAL_ERROR, "Couldn't obtain forum watch information", "", __LINE__, __FILE__, $sql);
	}

	if( $row = $db->sql_fetchrow($result) )
	{
		if( isset($HTTP_GET_VARS['unwatch']) )
		{
			if( $HTTP_GET_VARS['unwatch'] == "forum" )
			{
				$is_watching_forum = 0;

				$sql_priority = (SQL_LAYER == "mysql") ? "LOW_PRIORITY" : "";
				$sql = "DELETE $sql_priority FROM " . FORUMS_WATCH_TABLE . "
					WHERE forum_id = $forum_id
						AND user_id = " . $userdata['user_id'];
				if( !$result = $db->sql_query($sql) )
				{
					message_die(GENERAL_ERROR, "Couldn't delete forum watch information", "", __LINE__, __FILE__, $sql);
				}
			}
			
			$template->assign_vars(array(
				"META" => '<meta http-equiv="refresh" content="3;url=' . append_sid("viewforum.$phpEx?" . POST_FORUM_URL . "=$forum_id&start=$start") . '">')
			);

			$message = $lang['No_longer_watching_forum'] . '<br /><br />' . sprintf($lang['Click_return_forum'], '<a href="' . append_sid("viewforum.$phpEx?" . POST_FORUM_URL . "=$forum_id&start=$start") . '">', '</a>');
			message_die(GENERAL_MESSAGE, $message);
		}
		else
		{
			$is_watching_forum = TRUE;

			if( $row['notify_status'] )
			{
				$sql_priority = (SQL_LAYER == "mysql") ? "LOW_PRIORITY" : "";
				$sql = "UPDATE $sql_priority " . FORUMS_WATCH_TABLE . "
					SET notify_status = 0
					WHERE forum_id = $forum_id
						AND user_id = " . $userdata['user_id'];
				if( !$result = $db->sql_query($sql) )
				{
					message_die(GENERAL_ERROR, "Couldn't update forum watch information", "", __LINE__, __FILE__, $sql);
				}
			}
		}
	}
	else
	{
		if( isset($HTTP_GET_VARS['watch']) )
		{
			if( $HTTP_GET_VARS['watch'] == "forum" )
			{
				$is_watching_forum = TRUE;

				$sql_priority = (SQL_LAYER == "mysql") ? "LOW_PRIORITY" : "";
				$sql = "INSERT $sql_priority INTO " . FORUMS_WATCH_TABLE . " (user_id, forum_id, notify_status)
					VALUES (" . $userdata['user_id'] . ", $forum_id, 0)";
				if( !$result = $db->sql_query($sql) )
				{
					message_die(GENERAL_ERROR, "Couldn't insert forum watch information", "", __LINE__, __FILE__, $sql);
				}
			}

			$template->assign_vars(array(
				"META" => '<meta http-equiv="refresh" content="3;url=' . append_sid("viewforum.$phpEx?" . POST_FORUM_URL . "=$forum_id&start=$start") . '">')
			);

			$message = $lang['You_are_watching_forum'] . '<br /><br />' . sprintf($lang['Click_return_forum'], '<a href="' . append_sid("viewforum.$phpEx?" . POST_FORUM_URL . "=$forum_id&start=$start") . '">', '</a>');
			message_die(GENERAL_MESSAGE, $message);
		}
		else
		{
			$is_watching_forum = 0;
		}
	}
}
Rettet den Wald, esst mehr Specht!

Forum [ sofern im Beitrag darauf verwiesen :-) ]
Antworten