Threads zusammenfügen

Du suchst einen bestimmten Mod, weißt aber nicht genau wo bzw. ob er überhaupt existiert? Wenn dir dieser Artikel nicht weiterhilft, kannst du hier den von dir gewünschten/gesuchten Mod beschreiben ...
Falls ein Mod-Autor eine der Anfragen hier aufnimmt um einen neuen Mod zu entwicklen, geht's in phpBB 2.0: Mods in Entwicklung weiter.
Forumsregeln
phpBB 2.0 hat das Ende seiner Lebenszeit überschritten
phpBB 2.0 wird nicht mehr aktiv unterstützt. Insbesondere werden - auch bei Sicherheitslücken - keine Patches mehr bereitgestellt. Der Einsatz von phpBB 2.0 erfolgt daher auf eigene Gefahr. Wir empfehlen einen Umstieg auf phpBB 3.0, welches aktiv weiterentwickelt wird und für welches regelmäßig Updates zur Verfügung gestellt werden.
Mischa

Threads zusammenfügen

Beitrag von Mischa »

Hi Leute,

in meinem Forum weichen die Leute oft von Thema ab und reden auf einmal von Dingen die in anderen Theads schon mal angesprochen wurden.
Meine Frage:
Es ist ja möglich einen Thread zu teilen. Aber kann ich die letzten paar "abgetrennten Posts" dann auch an einen anderen Thread anhängen.
Also Themen zusammenfügen.
Weil ansosten hätt ich ja mehrere Threads mit dem gleichen Thema.

Freu mich über Hilfe,
Mischa
Benutzeravatar
Chaze
Ehemaliges Teammitglied
Beiträge: 2035
Registriert: 31.01.2003 12:20
Wohnort: Hannover

Beitrag von Chaze »

Der ModCP Merge Hack dürfte sein, was Du suchst. Ob er auf 2.0.4 funktioniert, mußt Du ausprobieren.
by[t]e,
Chaze
!!!--> Kein Support per PN oder Mail <--!!!
Mischa

Beitrag von Mischa »

Joa... nett bis jetzt. Hab alle Quelltexte in die jeweiligen Dateien gepackt und die modcp_merge.tpl hochgeladen. So wies beschrieben war.

Aber wie kann ich nun Themen zusammenfügen? Es wird nirgendwo im Forum eine neue Funktion angezeigt werden.
Benutzeravatar
Schumi
Ehemaliges Teammitglied
Beiträge: 4925
Registriert: 07.10.2002 12:37

Beitrag von Schumi »

Bei der Moderatorenkontrolle sollte jetzt ein Button angezeigt werden. Dort, wo auch die normalen Buttons sind.
Gast

Beitrag von Gast »

So hab ich mir das auch vorgestellt.
Aber leider ist das nicht der Fall.
Ich hab auch schon versucht ein "topic_merge.gif" in meinen Image Ordner zu hochzuladen.
Benutzeravatar
Angela Goldig
Mitglied
Beiträge: 221
Registriert: 21.04.2003 04:10
Kontaktdaten:

Beitrag von Angela Goldig »

so sieht das bei mir aus

http://img.worebu.de/merge.jpg

dast du eventuell nicht alle änderungen gemacht?
~blubb~
Gast

Beitrag von Gast »

Ich versteh das nicht. Bin nochmal alles durchgegangen.
Also folgende Änderungen habe ich gamacht:

Code: Alles auswählen



######################################################## 
## Mod Title:   ModCP Merge Hack
## Mod Version: 1.0.1 
## Author:       sickb0y < http://www.p2pitalia.com > 
## Description:  This mod adds topics merge function
##               in moderator control panel.
## 
## Installation Level:  (intermediate) 
## Installation Time:   5-10 Minutes 
## Files To Edit:       4
## Included Files:      modcp_merge.tpl
######################################################## 
## 
## Installation Notes: 
## 
##
## Put modcp_merge.tpl in templates/xxx/
##
######################################################## 


# 
#-----[ OPEN includes/functions_admin.php ]-------------------
# 
# 
#-----[ FIND ]----------------------------------
# 
function make_forum_select($box_name, $ignore_forum = false, $select_forum = '')
{
	global $db, $userdata;

	$is_auth_ary = auth(AUTH_READ, AUTH_LIST_ALL, $userdata);

	$sql = "SELECT forum_id, forum_name
		FROM " . FORUMS_TABLE . " 
		ORDER BY cat_id, forum_order";
	if ( !($result = $db->sql_query($sql)) )
	{
		message_die(GENERAL_ERROR, 'Couldn not obtain forums information', '', __LINE__, __FILE__, $sql);
	}

	$forum_list = '';
	while( $row = $db->sql_fetchrow($result) )
	{
		if ( $is_auth_ary[$row['forum_id']]['auth_read'] && $ignore_forum != $row['forum_id'] )
		{
			$selected = ( $select_forum == $row['forum_id'] ) ? ' selected="selected"' : '';
			$forum_list .= '<option value="' . $row['forum_id'] . '"' . $selected .'>' . $row['forum_name'] . '</option>';
		}
	}

	$forum_list = ( $forum_list == '' ) ? '<option value="-1">-- ! No Forums ! --</option>' : '<select name="' . $box_name . '">' . $forum_list . '</select>';

	return $forum_list;
}


# 
#-----[ AFTER, ADD ]------------------------------------------ 
# 
function make_topic_select($box_name, $forum_id)
{
	global $db, $userdata;

	$is_auth_ary = auth(AUTH_READ, AUTH_LIST_ALL, $userdata);

	$sql = "SELECT topic_id, topic_title 
		FROM " . TOPICS_TABLE . " 
		WHERE forum_id = $forum_id 
		ORDER BY topic_title";
	if ( !($result = $db->sql_query($sql)) )
	{
		message_die(GENERAL_ERROR, 'Couldn not obtain topics information', '', __LINE__, __FILE__, $sql);
	}

	$topic_list = '';
	while( $row = $db->sql_fetchrow($result) )
	{
		$topic_list .= '<option value="' . $row['topic_id'] . '">' . $row['topic_title'] . '</option>';
	}

	$topic_list = ( $topic_list == '' ) ? '<option value="-1">-- ! No Topics ! --</option>' : '<select name="' . $box_name . '">' . $topic_list . '</select>';

	return $topic_list;
}
# 
#-----[ CLOSE ]----------------------------------
# 



# 
#-----[ OPEN modcp.php ]-------------------
# 
# 
#-----[ FIND ]----------------------------------
# 
else if ( $unlock )
        {
                $mode = 'unlock';
        }
# 
#-----[ AFTER, ADD ]------------------------------------------ 
# 
else if ( $merge )
        {
                $mode = 'merge';
        }

# 
#-----[ FIND ]----------------------------------
# 
message_die(GENERAL_MESSAGE, $lang['Topics_Unlocked'] . '<br /><br />' . $message);

                break;
# 
#-----[ AFTER, ADD ]------------------------------------------ 
#
case 'merge':
                $page_title = $lang['Mod_CP'];
                include($phpbb_root_path . 'includes/page_header.'.$phpEx);

                if ( $confirm )
                {
                        if ( empty($HTTP_POST_VARS['topic_id_list']) && empty($topic_id) )
                        {
                                message_die(GENERAL_MESSAGE, $lang['None_selected']);
                        }

                        $new_topic_id = $HTTP_POST_VARS['new_topic'];
                        
				for ($i=0; $i < count($topic_id_list); $i++) {

				$old_topic_id = $topic_id_list[$i];

                        if ( $new_topic_id != $old_topic_id )
                        {
                                $sql = "UPDATE " . POSTS_TABLE . "
						    SET topic_id = $new_topic_id 
                                        WHERE topic_id = $topic_id_list[$i]";

                                if ( !($result = $db->sql_query($sql, BEGIN_TRANSACTION)) )
                                {
	                                message_die(GENERAL_ERROR, 'Could not update posts', '', __LINE__, __FILE__, $sql);
                                }

                                $sql = "DELETE FROM " . TOPICS_TABLE . "
                                        WHERE topic_id = $topic_id_list[$i]";

					  if ( !($result = $db->sql_query($sql, BEGIN_TRANSACTION)) )
                                {
	                                message_die(GENERAL_ERROR, 'Could not update posts', '', __LINE__, __FILE__, $sql);
                                }

					  $sql = "DELETE FROM  " . TOPICS_WATCH_TABLE . "
                                        WHERE topic_id = $topic_id_list[$i]";

					  if ( !($result = $db->sql_query($sql, BEGIN_TRANSACTION)) )
                                {
	                                message_die(GENERAL_ERROR, 'Could not update posts', '', __LINE__, __FILE__, $sql);
                                }

                                // Sync the forum indexes
				sync('forum', $forum_id);
                                sync('topic', $new_topic_id);

                                $message = $lang['Topics_Moved'] . '<br /><br />';
                        }
                        else
                        {
                                $message = $lang['No_Topics_Moved'] . '<br /><br />';
                        }

				}

                        if ( !empty($topic_id) )
                        {
                                $redirect_page = append_sid("viewtopic.$phpEx?" . POST_TOPIC_URL . "=$topic_id");
                                $message .= sprintf($lang['Click_return_topic'], '<a href="' . $redirect_page . '">', '</a>');
                        }
                        else
                        {
                                $redirect_page = append_sid("modcp.$phpEx?" . POST_FORUM_URL . "=$forum_id");
                                $message .= sprintf($lang['Click_return_modcp'], '<a href="' . $redirect_page . '">', '</a>');
                        }

                        $message = $message . '<br \><br \>' . sprintf($lang['Click_return_forum'], '<a href="' . append_sid("viewforum.$phpEx?" . POST_FORUM_URL . "=$old_forum_id") . '">', '</a>');

                        $template->assign_vars(array(
                                'META' => '<meta http-equiv="refresh" content="3;url=' . $redirect_page . '">')
                        );

                        message_die(GENERAL_MESSAGE, $message);
                }
                else
                {
                        if ( empty($HTTP_POST_VARS['topic_id_list']) && empty($topic_id) )
                        {
                                message_die(GENERAL_MESSAGE, $lang['None_selected']);
                        }

                        $hidden_fields = '<input type="hidden" name="mode" value="' . $mode . '" /><input type="hidden" name="' . POST_FORUM_URL . '" value="' . $forum_id . '" />';

                        if ( isset($HTTP_POST_VARS['topic_id_list']) )
                        {
                                $topics = $HTTP_POST_VARS['topic_id_list'];

                                for($i = 0; $i < count($topics); $i++)
                                {
                                        $hidden_fields .= '<input type="hidden" name="topic_id_list[]" value="' . intval($topics[$i]) . '" />';
                                }
                        }
                        else
                        {
                                $hidden_fields .= '<input type="hidden" name="' . POST_TOPIC_URL . '" value="' . $topic_id . '" />';
                        }

                        //
                        // Set template files
                        //
                        $template->set_filenames(array(
                                'mergetopic' => 'modcp_merge.tpl')
                        );

                        $template->assign_vars(array(
                                'MESSAGE_TITLE' => $lang['Confirm'],
                                'MESSAGE_TEXT' => $lang['Confirm_move_topic'],

                                'L_MERGE_TOPIC' => $lang['Merge_topic'],
                                
                                'L_YES' => $lang['Yes'],
                                'L_NO' => $lang['No'],

                                'S_TOPIC_SELECT' => make_topic_select('new_topic', $forum_id),
                                'S_MODCP_ACTION' => append_sid("modcp.$phpEx"),
                                'S_HIDDEN_FIELDS' => $hidden_fields)
                        );

                        $template->pparse('mergetopic');

                        include($phpbb_root_path . 'includes/page_tail.'.$phpEx);
                }
                break;

# 
#-----[ FIND ]----------------------------------
# 
'L_UNLOCK' => $lang['Unlock'],
# 
#-----[ AFTER, ADD ]------------------------------------------ 
#
'L_MERGE' => $lang['Merge'],
# 
#-----[ CLOSE ]----------------------------------
# 



# 
#-----[ OPEN language/lang_xxx/lang_main.php ]-------------------
# 
# 
#-----[ FIND ]----------------------------------
# 
$lang['Unlock'] = "Unlock";
# 
#-----[ AFTER, ADD ]------------------------------------------ 
#
$lang['Merge'] = "Merge"; 
$lang['Merge_topic'] = "Merge to topic"; 
# 
#-----[ CLOSE ]----------------------------------
# 



# 
#-----[ OPEN templates/xxx/modcp_body.tpl ]-------------------
# 
# 
#-----[ FIND ]----------------------------------
# 
&nbsp; 
		<input type="submit" name="unlock" class="liteoption" value="{L_UNLOCK}" />
# 
#-----[ AFTER, ADD ]------------------------------------------ 
#
&nbsp; 
		<input type="submit" name="merge" class="liteoption" value="{L_MERGE}" />
# 
#-----[ CLOSE ]----------------------------------
# 

# 
#----------------------------------------------- 
#


Wie kommst du denn zum Controlpannel?
Ist bei dir unten noch ein Button rechts neben den delete, move, lock und split Buttons?
Benutzeravatar
Angela Goldig
Mitglied
Beiträge: 221
Registriert: 21.04.2003 04:10
Kontaktdaten:

Beitrag von Angela Goldig »

sicher, dass das

Code: Alles auswählen

# 
#-----[ OPEN templates/xxx/modcp_body.tpl ]------------------- 
# 
# 
#-----[ FIND ]---------------------------------- 
# 
&nbsp; 
      <input type="submit" name="unlock" class="liteoption" value="{L_UNLOCK}" /> 
# 
#-----[ AFTER, ADD ]------------------------------------------ 
# 
&nbsp; 
      <input type="submit" name="merge" class="liteoption" value="{L_MERGE}" /> 
# 
#-----[ CLOSE ]---------------------------------- 
# 
drin ist?

ins modpanel kommt man eigentlich (bei mir is anders) über den link" du kannst dieses forum moderieren", der unten ist....
~blubb~
Mischa

Beitrag von Mischa »

aah... sehr schön.
So jetzt hab ich schonmal den "Merge" Button. Im Modpanel hab ich nicht nach gesehen, da in meinem Forum die "auth_list" weg ist.
Wie kann man denn sonst noch in den Modpannel kommen, ich würde die Liste unter der Jumpbox nämlich gerne wieder entfernen.

Und nun weiter: Wenn ich im Modpannel ein Thema markiert habe und unten auf "Merge" klicke, kann ich zwar aussuchen an welches Thema es angehängt werden soll. Sobald ich dann jedoch mit "Ja" bestätige erscheint "Invalid_session". :o
Benutzeravatar
Angela Goldig
Mitglied
Beiträge: 221
Registriert: 21.04.2003 04:10
Kontaktdaten:

Beitrag von Angela Goldig »

da kann ich dir auch nicht raten.

aber du wirst ohne modpanel schlecht klar kommen. (wenn die auth liste wech ist). bei kleinigkeiten schon, aber räume mal in einem forum auf ohne mass move (modpanel). viel spass sach ich da nur. :D :D
~blubb~
Antworten

Zurück zu „phpBB 2.0: Mod Suche/Anfragen“