Seite 1 von 1
Alle PNs auf einer Seite anzeigen
Verfasst: 18.12.2008 17:18
von jensdd
Hallo,
ich habe den Multipage-Thread-Mod
http://www.phpbbhacks.com/download/3444 eingebaut, der aber nur in der Beitragsansicht funktioniert.
Code: Alles auswählen
########################################################
## MOD Title: Big threads in one page
## MOD Author: Sergeant < sergeant@pochta.ws > http://www.vladivostok.ru/forum4
##
## MOD Description: This hack allows users to read multi-page topics without switching between pages.
##
## Installation Level: Easy
## Installation Time: 3 Minutes
##
## Files To Edit: 3
## viewtopic.php
## viewforum.php
## language/lang_english/lang_main.php
##
## Included Files: n/a
##
#################################################################
Wie kann ich den Mod so ändern, dass er auch in der PN-Übersicht funktioniert? Grund ist der PN-Export als Textdatei, der jeweils nur für die markierten PNs einer Seite möglich ist.
Vielleicht hat jemand den Mod installiert und kann mir einen Tipp geben.
Gruß Jens
Re: Alle PNs auf einer Seite anzeigen
Verfasst: 20.12.2008 00:25
von Miriam
jensdd hat geschrieben:Grund ist der PN-Export als Textdatei, der jeweils nur für die markierten PNs einer Seite möglich ist.
Was spricht dagegen, alle PNs auf einer Seite anzeigen zu lassen? Also
Anzeigen: Alle Nachrichten auswählen.
Verfasst: 20.12.2008 10:02
von jensdd
Hm, wo siehst Du diese Funktion? Wenn ich unten auf "Anzeigen - Alle Beiträge" klicke, erhalte ich die Standarddarstellung.
Ich habe 100 PNs im Posteingang, auf 7 Seiten verteilt. Aus diesen 7 Seiten möchte ich per Klick eine machen, um alle PNs in einem Rutsch markieren und als TXT speichern zu können.
Wie gesagt, in der Beitragsansicht funktioniert das prima. Die PN-Ansicht greift aber zur Anzeige der Seitennummerierung direkt auf die functions.php zu. Und da traue ich mich nicht, dranrum zu basteln ...
Gruß Jens
Verfasst: 20.12.2008 23:29
von Miriam
Du könntest es so machen:
Finde in der includes/ucp/ucp_pm_viewfolder.php
Code: Alles auswählen
'S_TOPIC_ICONS' => ($config['enable_pm_icons']) ? true : false,
danach füge ein:
Code: Alles auswählen
'ALL_PMS' => append_sid("{$phpbb_root_path}ucp.$phpEx", "i=pm&mode=view&action=view_folder&all&f=$folder_id"),
finde weiter:
Code: Alles auswählen
else
{
// Select the sort order
$sql_sort_order = $sort_by_sql[$sort_key] . ' ' . (($sort_dir == 'd') ? 'DESC' : 'ASC');
$sql_start = $start;
}
danach füge ein
Code: Alles auswählen
if (isset($_GET['all']))
{
$sql_start = 0;
$sql_limit = $pm_count;
}
finde in der styles/prosilver/template/ucp_pm_viewfolder.html
Code: Alles auswählen
<!-- IF PAGE_NUMBER --><!-- IF PAGINATION --> • <a href="#" onclick="jumpto(); return false;" title="{L_JUMP_TO_PAGE}">{PAGE_NUMBER}</a> • <span>{PAGINATION}</span><!-- ELSE --> • {PAGE_NUMBER}<!-- ENDIF --><!-- ENDIF -->
füge in dieser Zeile zw.
<!-- ENDIF --> und
<!-- ENDIF --> ein:
finde in der styles/prosilver/template/ucp_pm_message_header.html
Code: Alles auswählen
<!-- IF PAGE_NUMBER --><!-- IF PAGINATION --> • <a href="#" onclick="jumpto(); return false;" title="{L_JUMP_TO_PAGE}">{PAGE_NUMBER}</a> • <span>{PAGINATION}</span><!-- ELSE --> • {PAGE_NUMBER}1<!-- ENDIF --><!-- ENDIF -->
füge in dieser Zeile zw.
<!-- ENDIF --> und
<!-- ENDIF --> ein:
Cache löschen und Template-Cache aktualisieren (beides im ACP).
Jetzt hast Du einen Link zum Anzeigen aller PMs im Verzeichnis (neben den Seitenzahlen).
Verfasst: 21.12.2008 18:33
von jensdd
Miriam, ich habe ein phpBB 2.x
Dein Code scheint für phpBB 3 zu sein, jedenfalls kann ich includes/ucp/... nicht finden.
Bin leider im PHP nicht so fit, dass ich das adaptieren könnte.
Gruß Jens
Verfasst: 21.12.2008 19:30
von Miriam
Schade.... Dann war die Arbeit ja ganz umsonst. Naja, wenn Du mal ein Upgrade machst, kannst Du diesen Code verwenden.
Verfasst: 22.12.2008 09:25
von jensdd
Ist ja nicht so schlimm, trotzdem danke für Deine Hilfe.
Ein Upgrade kommt vorerst für mich nicht in Frage. Alles läuft stabil und wenn ich an die Mods denke, die ich da in schlaflosen Nächten verbaut habe - nee danke

Verfasst: 26.12.2008 19:46
von jensdd
Ich habe den Mod mal auf Basis des alten Mods angepasst. Scheint so im phpBB2 zu funktionieren.
Code: Alles auswählen
#
#-----[ OPEN ]------------------------------------------
#
privmsg.php
#
#-----[ FIND ]------------------------------------------
#
$start = ( !empty($HTTP_GET_VARS['start']) ) ? intval($HTTP_GET_VARS['start']) : 0;
#
#-----[ REPLACE WITH ]------------------------------------------
#
if(!$HTTP_GET_VARS['start']) {
$start='0';
} else{
$start=(intval($HTTP_GET_VARS['start']) == $HTTP_GET_VARS['start']) ? (intval($HTTP_GET_VARS['start'])) : ('all');
};
#
#-----[ FIND ]------------------------------------------
#
$sql .= $limit_msg_time . " ORDER BY pm.privmsgs_date DESC LIMIT $start, " . $board_config['topics_per_page'];
#
#-----[ BEFORE, ADD ]-------------------------------------
#
$_limit=($start=='all')?(''):("LIMIT ".$start.", ".$board_config['topics_per_page']);
#
#-----[ INLINE FIND ]-------------------------------------
#
DESC LIMIT $start, " . $board_config['topics_per_page'];
#
#-----[ REPLACE WITH ]------------------------------------------
#
DESC ".$_limit;
#
#-----[ FIND ]------------------------------------------
#
$template->assign_vars(array(
'PAGINATION' => generate_pagination("privmsg.$phpEx?folder=$folder", $pm_total, $board_config['topics_per_page'], $start),
#
#-----[ BEFORE, ADD ]-------------------------------------
#
if($start=='all') {
$pagination=' ';
} else{
$pagination = generate_pagination("privmsg.$phpEx?folder=$folder", $pm_total, $board_config['topics_per_page'], $start);
if(!empty($pagination)) {
$pagination.=" <a href='".append_sid("privmsg.$phpEx?folder=$folder&start=all")."'>".$lang['View_all_pages']."</a>";
} else{$pagination=" ";}
};
#
#-----[ FIND THE SAME STRING ]-------------------------------------
#
'PAGINATION' => generate_pagination("privmsg.$phpEx?folder=$folder", $pm_total, $board_config['topics_per_page'], $start),
#
#-----[ REPLACE WITH ]-------------------------------------
#
'PAGINATION' => $pagination,
#
#-----[ OPEN ]------------------------------------------
#
language/lang_german/lang_main.php
#
#-----[ FIND ]------------------------------------------
#
?>
#
#-----[ BEFORE, ADD ]------------------------------------------
#
$lang['View_all_pages']='[alle]';
#
#-----[ SAVE/CLOSE ALL FILES ]------------------------------------------
#