Suche "VisualConfirm before Posting for Guests"

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.
Antworten
testit
Mitglied
Beiträge: 234
Registriert: 04.06.2001 02:00

Suche "VisualConfirm before Posting for Guests"

Beitrag von testit »

Hi,

wegen der zunehmenden Anzahl an SPAMS suche ich einen MOD, der bei GÄSTEN nur Postings/Replies akzeptiert, wenn zuvor ein "Visual Confirmation" korrekt erfolgte.

Bei reg. Usern soll diese allerdings nicht erscheinen, da diese schon bei der Reg. eine Visual Confirmation passieren mussten.

Gibt es so einen MOD?

Danke und Gruss

testit
Benutzeravatar
Fabrizio
Mitglied
Beiträge: 574
Registriert: 29.03.2005 23:51
Wohnort: Berlin

Beitrag von Fabrizio »

Hi testit,

schaue mal hier. ;-)

Gruß,
Fabrizio
testit
Mitglied
Beiträge: 234
Registriert: 04.06.2001 02:00

Beitrag von testit »

:)
Offenbar genau das, was ich gesucht habe!

Hatte bei phpbbhacks.com mit Suchwort "confirmation" gesucht, aber dieser MOD tauchte nicht als Ergebnis auf!

Nette Gruesse
testit
Benutzeravatar
Fabrizio
Mitglied
Beiträge: 574
Registriert: 29.03.2005 23:51
Wohnort: Berlin

Beitrag von Fabrizio »

testit hat geschrieben::)
Offenbar genau das, was ich gesucht habe!
Ein anderer MOD ist mir zumindest nicht bekannt, aber vielleicht kennen die anderen hier einen...
testit hat geschrieben:Hatte bei phpbbhacks.com mit Suchwort "confirmation" gesucht, aber dieser MOD tauchte nicht als Ergebnis auf!
Ich habe meinen von http://www.php.com. ;-)

Fabrizio
testit
Mitglied
Beiträge: 234
Registriert: 04.06.2001 02:00

Beitrag von testit »

Hmm,

auf der Seite, die Du oben verlinkt hast, stimmt etwas nicht mit dem Download-Link!

Unter http://www.phpbb.com/phpBB/viewtopic.php?t=361339
gibt es auch noch einen ähnlichen MOD, allerdings frage ich mich, ob die Leute kapieren, dass sie im Dropdown-Menü noch auf "Yes" stellen müssen.


Gruss
testit
Benutzeravatar
Fabrizio
Mitglied
Beiträge: 574
Registriert: 29.03.2005 23:51
Wohnort: Berlin

Beitrag von Fabrizio »

testit hat geschrieben:Hmm,

auf der Seite, die Du oben verlinkt hast, stimmt etwas nicht mit dem Download-Link!
Der funktioniert doch. Du musst auf "Download File: guest_confirmation_1_0_1a.mod" gehen und dann ein wenig warten, dann erscheint das Folgende:

Code: Alles auswählen

##############################################################
## MOD Title: Visual Confirmation for Guests
## MOD Author: Kanuck < aaron@kanuck.net > (Aaron Adams) http://kanuck.net/
## MOD Description: Adds visual confirmation for guest posts, eliminating spam.
## MOD Version: 1.0.1
##
## Installation Level: Easy
## Installation Time: 3 Minutes
## Files To Edit: posting.php, templates/subSilver/posting_body.tpl
## Included Files: n/a
##############################################################
## For Security Purposes, Please Check: http://www.phpbb.com/mods/ for the
## latest version of this MOD. Downloading this MOD from other sites could cause malicious code
## to enter into your phpBB Forum. As such, phpBB will not offer support for MOD's not offered
## in our MOD-Database, located at: http://www.phpbb.com/mods/
##############################################################
## Author Notes: None
##
##############################################################
## MOD History:
##
##   2005-02-18 - Version 1.0.1
##      - It works now. No more parse errors.
##
##############################################################
## Before Adding This MOD To Your Forum, You Should Back Up All Files Related To This MOD
############################################################## 

#
#-----[ OPEN ]------------------------------------------
#

posting.php

#
#-----[ FIND ]------------------------------------------
#

/***************************************************************************
 *
 *   This program is free software; you can redistribute it and/or modify
 *   it under the terms of the GNU General Public License as published by
 *   the Free Software Foundation; either version 2 of the License, or
 *   (at your option) any later version.
 *
 ***************************************************************************/
 
#
#-----[ AFTER, ADD ]------------------------------------------
#

/*

png visual confirmation system : (c) phpBB Group, 2003 : All Rights Reserved

*/

#
#-----[ FIND ]------------------------------------------
#

case 'editpost':
case 'newtopic':
case 'reply':

#
#-----[ AFTER, ADD ]------------------------------------------
#

if ( $board_config['enable_confirm'] && !$userdata['session_logged_in'] )
{
if ( empty($HTTP_POST_VARS['confirm_id']) || empty($HTTP_POST_VARS['confirm_code']) )
{
$error = TRUE;
$error_msg .= ( ( isset($error_msg) ) ? '<br />' : '' ) . $lang['Confirm_code_wrong'];
}
else
{
$confirm_id = htmlspecialchars($HTTP_POST_VARS['confirm_id']);
if (!preg_match('/^[A-Za-z0-9]+$/', $confirm_id))
{
$confirm_id = '';
}

$sql = 'SELECT code 
FROM ' . CONFIRM_TABLE . " 
WHERE confirm_id = '$confirm_id' 
AND session_id = '" . $userdata['session_id'] . "'";
if (!($result = $db->sql_query($sql)))
{
message_die(GENERAL_ERROR, 'Could not obtain confirmation code', __LINE__, __FILE__, $sql);
}

if ($row = $db->sql_fetchrow($result))
{
if ($row['code'] != $HTTP_POST_VARS['confirm_code'])
{
$error = TRUE;
$error_msg .= ( ( isset($error_msg) ) ? '<br />' : '' ) . $lang['Confirm_code_wrong'];
}
else
{
$sql = 'DELETE FROM ' . CONFIRM_TABLE . " 
WHERE confirm_id = '$confirm_id' 
AND session_id = '" . $userdata['session_id'] . "'";
if (!$db->sql_query($sql))
{
message_die(GENERAL_ERROR, 'Could not delete confirmation code', __LINE__, __FILE__, $sql);
}
}
}
else
{
$error = TRUE;
$error_msg .= ( ( isset($error_msg) ) ? '<br />' : '' ) . $lang['Confirm_code_wrong'];
}
$db->sql_freeresult($result);
}
}

#
#-----[ FIND ]------------------------------------------
#

// Generate smilies listing for page output
generate_smilies('inline', PAGE_POSTING);

#
#-----[ BEFORE, ADD ]------------------------------------------
#

//
// Visual confirmation for guests
//
$confirm_image = '';
if( !$userdata['session_logged_in'] && (!empty($board_config['enable_confirm'])) )
{
$sql = 'SELECT session_id 
FROM ' . SESSIONS_TABLE; 
if (!($result = $db->sql_query($sql)))
{
message_die(GENERAL_ERROR, 'Could not select session data', '', __LINE__, __FILE__, $sql);
}

if ($row = $db->sql_fetchrow($result))
{
$confirm_sql = '';
do
{
$confirm_sql .= (($confirm_sql != '') ? ', ' : '') . "'" . $row['session_id'] . "'";
}
while ($row = $db->sql_fetchrow($result));

$sql = 'DELETE FROM ' .  CONFIRM_TABLE . " 
WHERE session_id NOT IN ($confirm_sql)";
if (!$db->sql_query($sql))
{
message_die(GENERAL_ERROR, 'Could not delete stale confirm data', '', __LINE__, __FILE__, $sql);
}
}
$db->sql_freeresult($result);

$confirm_chars = array('A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J',  'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T',  'U', 'V', 'W', 'X', 'Y', 'Z', '1', '2', '3', '4', '5', '6', '7', '8', '9');

list($usec, $sec) = explode(' ', microtime()); 
mt_srand($sec * $usec); 

$max_chars = count($confirm_chars) - 1;
$code = '';
for ($i = 0; $i < 6; $i++)
{
$code .= $confirm_chars[mt_rand(0, $max_chars)];
}

$confirm_id = md5(uniqid($user_ip));

$sql = 'INSERT INTO ' . CONFIRM_TABLE . " (confirm_id, session_id, code) 
VALUES ('$confirm_id', '". $userdata['session_id'] . "', '$code')";
if (!$db->sql_query($sql))
{
message_die(GENERAL_ERROR, 'Could not insert new confirm code information', '', __LINE__, __FILE__, $sql);
}

unset($code);

$confirm_image = (@extension_loaded('zlib')) ? '<img src="' . append_sid("profile.$phpEx?mode=confirm&id=$confirm_id") . '" alt="" title="" />' : '<img src="' . append_sid("profile.$phpEx?mode=confirm&id=$confirm_id&c=1") . '" alt="" title="" /><img src="' . append_sid("profile.$phpEx?mode=confirm&id=$confirm_id&c=2") . '" alt="" title="" /><img src="' . append_sid("profile.$phpEx?mode=confirm&id=$confirm_id&c=3") . '" alt="" title="" /><img src="' . append_sid("profile.$phpEx?mode=confirm&id=$confirm_id&c=4") . '" alt="" title="" /><img src="' . append_sid("profile.$phpEx?mode=confirm&id=$confirm_id&c=5") . '" alt="" title="" /><img src="' . append_sid("profile.$phpEx?mode=confirm&id=$confirm_id&c=6") . '" alt="" title="" />';
$hidden_form_fields .= '<input type="hidden" name="confirm_id" value="' . $confirm_id . '" />';

$template->assign_block_vars('switch_confirm', array());
}

#
#-----[ FIND ]------------------------------------------
#

'SMILIES_STATUS' => $smilies_status, 

#
#-----[ AFTER, ADD ]------------------------------------------
#

'CONFIRM_IMG' => $confirm_image,

#
#-----[ FIND ]------------------------------------------
#

'L_DELETE_POST' => $lang['Delete_post'],

#
#-----[ AFTER, ADD ]------------------------------------------
#

'L_CONFIRM_CODE_IMPAIRED'=> sprintf($lang['Confirm_code_impaired'], '<a href="mailto:' . $board_config['board_email'] . '">', '</a>'),
'L_CONFIRM_CODE' => $lang['Confirm_code'],
'L_CONFIRM_CODE_EXPLAIN' => $lang['Confirm_code_explain'],

#
#-----[ OPEN ]------------------------------------------
#

templates/subSilver/posting_body.tpl

#
#-----[ FIND ]------------------------------------------
#

{POLLBOX}

#
#-----[ AFTER, ADD ]------------------------------------------
#

<!-- Visual Confirmation -->
<!-- BEGIN switch_confirm -->
<tr>
<td class="row1" colspan="2" align="center"><span class="gensmall">{L_CONFIRM_CODE_IMPAIRED}</span><br /><br />{CONFIRM_IMG}<br /><br /></td>
</tr>
<tr> 
  <td class="row1"><span class="gen">{L_CONFIRM_CODE}: * </span><br /><span class="gensmall">{L_CONFIRM_CODE_EXPLAIN}</span></td>
  <td class="row2"><input type="text" class="post" style="width: 200px" name="confirm_code" size="6" maxlength="6" value="" /></td>
</tr>
<!-- END switch_confirm -->

#
#-----[ SAVE/CLOSE ALL FILES ]------------------------------------------
#
# EoM
Good Luck. :grin:
testit
Mitglied
Beiträge: 234
Registriert: 04.06.2001 02:00

Beitrag von testit »

Hi,

Du hast natürlich recht!

Wenn ich etwas von Download lese, und genau DAS steht dort, klicke ich den Link mit rechter Maustaste, um das File zu speichern.

Genau dies geht im vorliegenden Fall natürlich nicht, weil es kein Download ist, obwohl dies dort steht!


Nette Grüsse

testit
Benutzeravatar
Fabrizio
Mitglied
Beiträge: 574
Registriert: 29.03.2005 23:51
Wohnort: Berlin

Beitrag von Fabrizio »

Hi...
testit hat geschrieben:Genau dies geht im vorliegenden Fall natürlich nicht, weil es kein Download ist, obwohl dies dort steht!
Ja, das ist blöd gemacht, da hast du vollkommen Recht. Klar erwartet man beim Download einen "richtigen" Download. Bei www.php.com ist es nur ein "richtiger" Download, wenn da auch Dateien dabei sind, handelt es sich aber wie hier nur um ein Textfile, dann ist das so geregelt. Man kann es ja zum Download machen, wenn man sich die Seite abspeichert. ;-)

Na ja, wie auch immer, sagst du Bescheid, ob der Einbau geklappt hat und wie sich der MOD macht? Danke schon mal im Voraus.

Grüße,
Fabrizio
Antworten

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