Attachments direkt im Post löschen
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!
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!
- oxpus
- Administrator
- Beiträge: 28735
- Registriert: Mo 27.Jan, 2003 22:13
- Wohnort: Bad Wildungen
- Kontaktdaten:
Attachments direkt im Post löschen
Das angehängte Snippet erlaubt das Löschen von Attachments direkt im Post.
Löschen können auf diese Weise Admins und Moderatoren.
Das angehängte Bild zeigt auch, wo der Link zu finden ist.
History:
05.04.2005: Text wer wann ein Attachment gelöscht hat wird nun an Post-Text angehangen
20.04.2005: Snippet angepasst für diejenigen, die eine Fehlermeldung bezüglich "prepare_message" erhalten.
Löschen können auf diese Weise Admins und Moderatoren.
Das angehängte Bild zeigt auch, wo der Link zu finden ist.
History:
05.04.2005: Text wer wann ein Attachment gelöscht hat wird nun an Post-Text angehangen
20.04.2005: Snippet angepasst für diejenigen, die eine Fehlermeldung bezüglich "prepare_message" erhalten.
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.
Karsten Ude
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
Interessantes und nützliches Snippet!!! 
[center].: Web Relax .::. Essen mit Freude .::. AmigaLink.de :.
______________________________________
Kein Support per PM, ICQ oder eMail!!![/center]
______________________________________
Kein Support per PM, ICQ oder eMail!!![/center]
Sehr nützlich. Schön wäre es natürlich, wenn automatisch nach dem Löschen auch der Post editiert und z.B.
Leider kann ich es weder skriptseitig umsetzen, noch hab ich eine Ahnung, wie aufwändig das wäre.
Aber als Idee wollt ich es wenigstens mal loswerden
als Text eingefügt werden würde[ Attachment gelöscht von XXX am YYY ]
Leider kann ich es weder skriptseitig umsetzen, noch hab ich eine Ahnung, wie aufwändig das wäre.
Aber als Idee wollt ich es wenigstens mal loswerden
Zuletzt geändert von modbo am Mo 04.Apr, 2005 23:51, insgesamt 1-mal geändert.
- oxpus
- Administrator
- Beiträge: 28735
- Registriert: Mo 27.Jan, 2003 22:13
- Wohnort: Bad Wildungen
- Kontaktdaten:
Jetzt weiß ich, was ich noch vergessen hab. Danke für den Hinweis.
BTW: Ist recht einfach: Da man die Post-ID hat, braucht man nach dem Löschen (natürlich nur aus der Beitragsansicht heraus!) nur noch eine SQL-Abfrage zu machen.
So nach dem Motto:
if ($delete_viewforum == TRUE)
{
$sql = "UPDATE " . POSTS_TEXT_TABLE . "
SET post_text = post_text + '<br /><br />Attachment deleted '.create_date($userdata['user_dateformat'], time(), $userdata['user_timezone']).' by '.$userdata['user_name'].'
WHERE post_id = $post_id";
if(!$db->sql_query($sql))
{
message_die(GENERAL_ERROR, 'Could not insert attachment delete text into post', '', __LINE__, __FILE__, $sql);
}
}[/code]
Naja, so in etwa.
Wie genau, werde ich demnächst mal ausklamüsern.
EDIT
Das Snippet ist nun aktualisiert. Bitte den Part für die viewtopic.php erst deinstallieren und dann neu installieren!!!!! Die Position des Code-Blocks hat sich in dieser Datei verändert.
Dazu ist auch die lang_main.php zu bearbeiten.
BTW: Ist recht einfach: Da man die Post-ID hat, braucht man nach dem Löschen (natürlich nur aus der Beitragsansicht heraus!) nur noch eine SQL-Abfrage zu machen.
So nach dem Motto:
if ($delete_viewforum == TRUE)
{
$sql = "UPDATE " . POSTS_TEXT_TABLE . "
SET post_text = post_text + '<br /><br />Attachment deleted '.create_date($userdata['user_dateformat'], time(), $userdata['user_timezone']).' by '.$userdata['user_name'].'
WHERE post_id = $post_id";
if(!$db->sql_query($sql))
{
message_die(GENERAL_ERROR, 'Could not insert attachment delete text into post', '', __LINE__, __FILE__, $sql);
}
}[/code]
Naja, so in etwa.
Wie genau, werde ich demnächst mal ausklamüsern.
EDIT
Das Snippet ist nun aktualisiert. Bitte den Part für die viewtopic.php erst deinstallieren und dann neu installieren!!!!! Die Position des Code-Blocks hat sich in dieser Datei verändert.
Dazu ist auch die lang_main.php zu bearbeiten.
Karsten Ude
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
Super 
Hat bereits in mehreren beiträgen funktioniert, aber eben kam in einem eine Fehlermeldung
Einzig, was mir an dem Beitrag aufgefallen ist, ist, dass er eine Zitat enthält ...
Hat bereits in mehreren beiträgen funktioniert, aber eben kam in einem eine Fehlermeldung
Could not insert delete message for attachment
DEBUG MODE
SQL Error : 1064 You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near 'PAGE_ACTIVITY', [color=red:bcba3ab263]-12[/color:bcba3ab263]);
UPDATE phpbb_posts_text SET post_text = '[quote:bcba3ab263]// Arcade - Activity MOD define('PAGE_ACTIVITY', [color=red:bcba3ab263]-12[/color:bcba3ab263]); define('PAGE_PLAYING_GAMES', [color=blue:bcba3ab263]-13[/color:bcba3ab263]); define('PAGE_ARCADE_MOD', [color=brown:bcba3ab263]-14[/color:bcba3ab263]); define('PAGE_DOWNLOAD', [color=red:bcba3ab263]-12[/color:bcba3ab263]); define('PAGE_CARD', [color=blue:bcba3ab263]-13[/color:bcba3ab263]); define('PAGE_LINKS', [color=brown:bcba3ab263]-14[/color:bcba3ab263]); define('PAGE_STAFF', -22); define('PAGE_TOPIC_OFFSET', 5000);[/quote:bcba3ab263] Die Werte dürfen nicht doppelt belegt werden! Beim Einfügen die nächst höhere, frei Zahl wählen. [ Attachment gelöscht am Di 05 Apr, 2005 09:02 von svbomber ][/size:bcba3ab263]' WHERE post_id = 709
Line : 247
File : viewtopic.php
Einzig, was mir an dem Beitrag aufgefallen ist, ist, dass er eine Zitat enthält ...
// Arcade - Activity MOD
define('PAGE_ACTIVITY', -12);
define('PAGE_PLAYING_GAMES', -13);
define('PAGE_ARCADE_MOD', -14);
define('PAGE_DOWNLOAD', -12);
define('PAGE_CARD', -13);
define('PAGE_LINKS', -14);
define('PAGE_STAFF', -22);
define('PAGE_TOPIC_OFFSET', 5000);
Die Werte dürfen nicht doppelt belegt werden!
Beim Einfügen die nächst höhere, frei Zahl wählen.
Zuletzt geändert von modbo am Di 05.Apr, 2005 09:08, insgesamt 2-mal geändert.
- oxpus
- Administrator
- Beiträge: 28735
- Registriert: Mo 27.Jan, 2003 22:13
- Wohnort: Bad Wildungen
- Kontaktdaten:
Okay, schau ich nachher nochmal drüber, wie ich das besser abfangen kann.
EDIT
Ich hab das Snippet nochmal angepasst. Der Part in der viewtopic.php ist überarbeitet.
Bitte diesen nochmal ersetzen und erneut versuchen.
EDIT
Ich hab das Snippet nochmal angepasst. Der Part in der viewtopic.php ist überarbeitet.
Bitte diesen nochmal ersetzen und erneut versuchen.
Karsten Ude
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
bei mir kommt dieser Fehler beim Löshen eines attachments.
habe auch versucht das was Oxpus an Code gepostet hat gemacht, brachte aber nichts :/
aus der viewtopic.php Zeile 184 bis 223Fatal error: Call to undefined function: prepare_message() in xxx/viewtopic.php on line 206
Code: Alles auswählen
//
// End session management
//
if ( isset($HTTP_GET_VARS['del_attach']))
{
$attach_id = intval($HTTP_GET_VARS['del_attach']);
$post_id_array = $attach_id_array = array();
$post_id_array[] = $post_id;
$attach_id_array[] = $attach_id;
delete_attachment($post_id_array, $attach_id_array, 0);
$sql = "SELECT bbcode_uid FROM " . POSTS_TEXT_TABLE . "
WHERE post_id = $post_id";
if(!$result = $db->sql_query($sql))
{
message_die(GENERAL_ERROR, 'Could not insert delete message for attachment', '', __LINE__, __FILE__, $sql);
}
$row = $db->sql_fetchrow($result);
$bbcode_uid = $row['bbcode_uid'];
$db->sql_freeresult($result);
$current_time = create_date($userdata['user_dateformat'], time(), $userdata['user_timezone']);
$post_text_add .= ($bbcode_uid != '') ? "\n\n".prepare_message(sprintf($lang['Attachment_delete_post_text_bbcode'], $current_time, $userdata['username']), $board_config['allow_html'], $board_config['allow_bbcode'], $board_config['allow_smilies'], $bbcode_uid) : "\n\n".sprintf($lang['Attachment_delete_post_text'], $current_time, $userdata['username']);
$sql = "UPDATE " . POSTS_TEXT_TABLE . "
SET post_text = concat(post_text, '$post_text_add')
WHERE post_id = $post_id";
if(!$result = $db->sql_query($sql))
{
message_die(GENERAL_ERROR, 'Could not insert delete message for attachment', '', __LINE__, __FILE__, $sql);
}
redirect(append_sid("viewtopic.$phpEx?".POST_POST_URL."=".$post_id).'#'.$post_id);
}
//
// Start auth check
//- oxpus
- Administrator
- Beiträge: 28735
- Registriert: Mo 27.Jan, 2003 22:13
- Wohnort: Bad Wildungen
- Kontaktdaten:
Ach ja, sorry. Vergessen...
Füge in der viewtopic.php nach
noch folgende Zeilen ein:
dann geht es wieder.
Das Snippet passe ich gleich mit an...
Füge in der viewtopic.php nach
Code: Alles auswählen
include($phpbb_root_path . 'common.'.$phpEx);Code: Alles auswählen
include($phpbb_root_path . 'includes/bbcode.'.$phpEx);
include($phpbb_root_path . 'includes/functions_post.'.$phpEx);Das Snippet passe ich gleich mit an...
Karsten Ude
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
Danke,
aber dieses brauchte ich nicht einfüge das steht schon bei mir.
aber dieses brauchte ich nicht einfüge das steht schon bei mir.
Code: Alles auswählen
include($phpbb_root_path . 'includes/bbcode.'.$phpEx);
Zuletzt geändert von Feuerball am Mi 20.Apr, 2005 15:32, insgesamt 1-mal geändert.
-
schmidtedv
- Beiträge: 607
- Registriert: So 13.Feb, 2005 10:46
- Wohnort: St. Blasien (seit 01.06)
- Kontaktdaten:
So, jetzt geb' ich au ma meinen Senf dazu bzw. hab direkt ne Frage :-)
eingebaut und läuft lecker...auch mit MorpheusX-Style sieht's gut aus....bis auf das Linksbündige...
Ich hab zwar einen [center.] BBcode drin, aber damit in der lang_main.php geht's irgendwie net...gibt's ne andere Möglichkeit, das dieser Text "Anlage gelöscht von...." zentriert erscheint? Ich nehm mal an, Du hast hier zumindest den gleichen Center-BBcode drin....sollte es nicht statt [size....] mit [center...] gehen??
eingebaut und läuft lecker...auch mit MorpheusX-Style sieht's gut aus....bis auf das Linksbündige...
Ich hab zwar einen [center.] BBcode drin, aber damit in der lang_main.php geht's irgendwie net...gibt's ne andere Möglichkeit, das dieser Text "Anlage gelöscht von...." zentriert erscheint? Ich nehm mal an, Du hast hier zumindest den gleichen Center-BBcode drin....sollte es nicht statt [size....] mit [center...] gehen??
- oxpus
- Administrator
- Beiträge: 28735
- Registriert: Mo 27.Jan, 2003 22:13
- Wohnort: Bad Wildungen
- Kontaktdaten:
Klar geht das. Wenn der BBCode [center] vorhanden ist, dann kannst Du den selbstverständlich auch im Text verwenden...
Karsten Ude
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
-
schmidtedv
- Beiträge: 607
- Registriert: So 13.Feb, 2005 10:46
- Wohnort: St. Blasien (seit 01.06)
- Kontaktdaten:
hm, hab ich da net uffgepasst....wohl weil ich [center] erst nach dem löschen eingenaut hab...ich nehm mal an, das ändert der dann net nachträglich, LOL
EDIT: Beim anderen nehm ich mal an sollte es <center></center> tun?
EDIT: Beim anderen nehm ich mal an sollte es <center></center> tun?
Zuletzt geändert von schmidtedv am Fr 22.Apr, 2005 11:19, insgesamt 1-mal geändert.
- oxpus
- Administrator
- Beiträge: 28735
- Registriert: Mo 27.Jan, 2003 22:13
- Wohnort: Bad Wildungen
- Kontaktdaten:
In meinem Snippet ist in den Angaben für die $lang[] die Grösse dieses Textes eingetragen (). Hier kannst Du noch [center] mit eintragen oder die Grösse ersetzen.
Mehr ist nicht zu tun.
Der HTML-Tag <center> würde hier nicht funktionieren, ausser, Du hast den im ACP freigegeben und HTML aktiviert.
Karsten Ude
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
-
schmidtedv
- Beiträge: 607
- Registriert: So 13.Feb, 2005 10:46
- Wohnort: St. Blasien (seit 01.06)
- Kontaktdaten:
Ich würde gerne den Link "Attachment löschen" gegen
tauschen.
Anders platzieren war nicht das Problem, allerdings wird das Image nicht geparsed ( $images['icon_delpost'] ).
Was hab ich noch vergessen?
Ist $images[...] nicht generell verfügbar?
viewtopic_attach_body.tpl
displaying.php
Anders platzieren war nicht das Problem, allerdings wird das Image nicht geparsed ( $images['icon_delpost'] ).
Was hab ich noch vergessen?
Ist $images[...] nicht generell verfügbar?
viewtopic_attach_body.tpl
Code: Alles auswählen
<tr>
<td width="100%" colspan="2" class="attachheader" align="left"><b><span class="gen"> {postrow.attach.attachrow.DOWNLOAD_NAME}</span></b></td>
<td width="100%" class="attachheader" align="right"><a href="{postrow.attach.attachrow.U_DELETE_ATTACH}" class="postdetails">{L_DELETE_ATTACH}</a></td>
</tr>Code: Alles auswählen
if ($userdata['user_level'] == ADMIN || $userdata['user_level'] == MOD)
{
$del_filename = $attachments['_' . $post_id][$i]['physical_filename'];
$l_delete_attach = '<img src="' . $images['icon_delpost'] . '" alt="' . $lang['Delete_attachment'] . '" title="' . $lang['Delete_attachment'] . '" border="0" />';
$u_delete_attach = append_sid("viewtopic.$phpEx?del_attach=".$attachments['_' . $post_id][$i]['attach_id']."&".POST_POST_URL."=".$post_id);
}
else
{
$del_filename = '';
$l_delete_attach = '';
$u_delete_attach = '';
}- oxpus
- Administrator
- Beiträge: 28735
- Registriert: Mo 27.Jan, 2003 22:13
- Wohnort: Bad Wildungen
- Kontaktdaten:
Du musst in der betreffenden Funktion noch $images globalisieren:
Erst dann stehen die dort auch bereit...
Code: Alles auswählen
global $images;Karsten Ude
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
Danke!!, habs hin bekommen 
//edit: Eine Frage noch...
Wäre es möglich, dass Attachments nicht sofort nach klick auf den Link gelöscht werden, sondern das noch eine Zwischenabfrage erscheint "Bist du dir wirklich sicher, dass das Attachment gelöscht werden soll?"
//edit: Eine Frage noch...
Wäre es möglich, dass Attachments nicht sofort nach klick auf den Link gelöscht werden, sondern das noch eine Zwischenabfrage erscheint "Bist du dir wirklich sicher, dass das Attachment gelöscht werden soll?"
Zuletzt geändert von modbo am Do 21.Dez, 2006 08:38, insgesamt 2-mal geändert.
- oxpus
- Administrator
- Beiträge: 28735
- Registriert: Mo 27.Jan, 2003 22:13
- Wohnort: Bad Wildungen
- Kontaktdaten:
Mit Javascript wäre das nicht ungeschickt, dann müsste man z. B. die Seite nicht neu laden...
Karsten Ude
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!