Have you tried pun_pm?

377

(2 replies, posted in PunBB 1.4 additions)

http://punbb.informer.com/forums/topic/ … ont-style/

Don't use this extension. Use pun_stop_bots and fancy_stop_spam.

<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE extension SYSTEM "ext-1.0.dtd">

<!--
/**
 * Adds CAPTCHA to the register, login and guest post form
 *
 * @copyright Copyright (C) 2008 PunBB, partially based on code by Jamie Furness
 * @license http://www.gnu.org/licenses/gpl.html GPL version 2 or higher
 * @package pun_antispam
 */
-->

    <extension engine="1.0">
    <id>pun_antispam</id>
    <title>Antispam System</title>
    <version>1.2</version>
    <description>Adds CAPTCHA to the register, login and guest post form.</description>
    <author>PunBB Development Team</author>
    <minversion>1.3dev</minversion>
    <maxtestedon>1.4.2</maxtestedon>

    <install><![CDATA[

if(!function_exists('imagejpeg'))
    message('This extension requires the <a href="http://www.php.net/gd">PHP GD library</a> to be installed.');

if (!isset($forum_config['o_pun_antispam_captcha_register']))
{
    $query = array(
        'INSERT'    => 'conf_name, conf_value',
        'INTO'        => 'config',
        'VALUES'    => '\'o_pun_antispam_captcha_register\', \'1\''
    );
    $forum_db->query_build($query) or error(__FILE__, __LINE__);
}

if (!isset($forum_config['o_pun_antispam_captcha_guestpost']))
{
    $query = array(
        'INSERT'    => 'conf_name, conf_value',
        'INTO'        => 'config',
        'VALUES'    => '\'o_pun_antispam_captcha_guestpost\', \'1\''
    );
    $forum_db->query_build($query) or error(__FILE__, __LINE__);
}

if (!isset($forum_config['o_pun_antispam_captcha_login']))
{
    $query = array(
        'INSERT'    => 'conf_name, conf_value',
        'INTO'        => 'config',
        'VALUES'    => '\'o_pun_antispam_captcha_login\', \'1\''
    );
    $forum_db->query_build($query) or error(__FILE__, __LINE__);
}

if (!isset($forum_config['o_pun_antispam_captcha_restorepass']))
{
    $query = array(
        'INSERT'    => 'conf_name, conf_value',
        'INTO'        => 'config',
        'VALUES'    => '\'o_pun_antispam_captcha_restorepass\', \'1\''
    );
    $forum_db->query_build($query) or error(__FILE__, __LINE__);
}
    ]]></install>

    <uninstall><![CDATA[
$query = array(
    'DELETE'    =>    'config',
    'WHERE'        =>    'conf_name IN (\'o_pun_antispam_captcha_register\', \'o_pun_antispam_captcha_guestpost\', \'o_pun_antispam_captcha_login\', \'o_pun_antispam_captcha_restorepass\')'
);
$forum_db->query_build($query) or error(__FILE__, __LINE__);
    ]]></uninstall>

    <hooks>
        <hook id="rg_start,aop_start,li_start,po_start"><![CDATA[
// Load the captcha language file
if (file_exists($ext_info['path'].'/lang/'.$forum_user['language'].'/'.$ext_info['id'].'.php'))
    require $ext_info['path'].'/lang/'.$forum_user['language'].'/'.$ext_info['id'].'.php';
else
    require $ext_info['path'].'/lang/English/'.$ext_info['id'].'.php';
        ]]></hook>

        <hook id="rg_register_form_submitted"><![CDATA[
if ($forum_config['o_pun_antispam_captcha_register'] == '1')
{
    session_start();

    if (empty($_SESSION['pun_antispam_confirmed_user']))
    {
        if ((empty($_SESSION['pun_antispam_text']) || strcasecmp(trim($_POST['pun_antispam_input']), $_SESSION['pun_antispam_text']) !== 0))
            $errors[] = $lang_pun_antispam['Invalid Text'];
        else
            $_SESSION['pun_antispam_confirmed_user'] = 1;
    }

    $_SESSION['pun_antispam_text'] = '';
}
        ]]></hook>

        <hook id="rg_register_pre_add_user"><![CDATA[
$_SESSION['pun_antispam_confirmed_user'] = 0;
        ]]></hook>

        <hook id="rg_register_pre_language"><![CDATA[
if ($forum_config['o_pun_antispam_captcha_register'] == '1' && empty($_SESSION['pun_antispam_confirmed_user']))
{
?>
                <div class="sf-set set<?php echo ++$forum_page['item_count'] ?>">
                    <div class="sf-box text required">
                        <label for="fld<?php echo ++$forum_page['fld_count'] ?>"><span><?php echo $lang_pun_antispam['Captcha'] ?> <em><?php echo $lang_common['Required'] ?></em></span> <small><?php echo $lang_pun_antispam['Captcha Info'] ?></small></label><br />
                        <span class="fld-input"><input id="fld<?php echo $forum_page['fld_count'] ?>" type="text" name="pun_antispam_input" value="" size="20" maxlength="10" />&nbsp;&nbsp;&nbsp;<img src="<?php echo $ext_info['url'].'/image.php?'.md5(time()) ?>" alt="" /></span>
                    </div>
                </div>
<?php
}
        ]]></hook>

        <hook id="li_login_form_submitted"><![CDATA[
session_start();

if ($forum_config['o_pun_antispam_captcha_login'] == '1' && (isset($_SESSION['pun_antispam_logins']) && $_SESSION['pun_antispam_logins'] > 5) && (empty($_SESSION['pun_antispam_text']) || strcasecmp(trim($_POST['pun_antispam_input']), $_SESSION['pun_antispam_text']) !== 0))
    $errors[] = $lang_pun_antispam['Invalid Text'];

$_SESSION['pun_antispam_text'] = '';
        ]]></hook>

        <hook id="li_login_pre_auth_message"><![CDATA[
if ($authorized && empty($errors))
    $_SESSION['pun_antispam_logins'] = 0;
        ]]></hook>

        <hook id="li_login_pre_remember_me_checkbox"><![CDATA[
if ($forum_config['o_pun_antispam_captcha_login'] == '1')
{
    if (empty($errors))
        session_start();

    // Output CAPTCHA if first attempts failed
    if (!isset($_SESSION['pun_antispam_logins']))
        $_SESSION['pun_antispam_logins'] = 1;
    else
        $_SESSION['pun_antispam_logins']++;

    if ($_SESSION['pun_antispam_logins'] > 5)
    {
?>
                <div class="sf-set set<?php echo ++$forum_page['item_count'] ?>">
                    <div class="sf-box text required">
                        <label for="fld<?php echo ++$forum_page['fld_count'] ?>"><span><?php echo $lang_pun_antispam['Captcha'] ?> <em><?php echo $lang_common['Required'] ?></em></span> <small><?php echo $lang_pun_antispam['Captcha Info'] ?></small></label><br />
                        <span class="fld-input"><input id="fld<?php echo $forum_page['fld_count'] ?>" type="text" name="pun_antispam_input" value="" size="20" maxlength="10" />&nbsp;&nbsp;&nbsp;<img src="<?php echo $ext_info['url'].'/image.php?'.md5(time()) ?>" alt="" /></span>
                    </div>
                </div>
<?php
    }
}
        ]]></hook>

        <hook id="li_forgot_pass_selected"><![CDATA[
if (isset($_POST['form_sent']))
{
    session_start();

    if ($forum_config['o_pun_antispam_captcha_restorepass'] == '1' && (empty($_SESSION['pun_antispam_text']) || strcasecmp(trim($_POST['pun_antispam_input']), $_SESSION['pun_antispam_text']) !== 0))
        $errors[] = $lang_pun_antispam['Invalid Text'];

    $_SESSION['pun_antispam_text'] = '';
}
        ]]></hook>

        <hook id="li_forgot_pass_pre_group_end"><![CDATA[
if ($forum_config['o_pun_antispam_captcha_restorepass'] == '1')
{
?>
                <div class="sf-set set<?php echo ++$forum_page['item_count'] ?>">
                    <div class="sf-box text required">
                        <label for="fld<?php echo ++$forum_page['fld_count'] ?>"><span><?php echo $lang_pun_antispam['Captcha'] ?> <em><?php echo $lang_common['Required'] ?></em></span> <small><?php echo $lang_pun_antispam['Captcha Info'] ?></small></label><br />
                        <span class="fld-input"><input id="fld<?php echo $forum_page['fld_count'] ?>" type="text" name="pun_antispam_input" value="" size="20" maxlength="10" />&nbsp;&nbsp;&nbsp;<img src="<?php echo $ext_info['url'].'/image.php?'.md5(time()) ?>" alt="" /></span>
                    </div>
                </div>
<?php
}
        ]]></hook>

        <hook id="po_end_validation"><![CDATA[
if ($forum_user['is_guest'] && $forum_config['o_pun_antispam_captcha_guestpost'] == '1')
{
    session_start();

    if (empty($_SESSION['pun_antispam_confirmed_user']))
    {
        if ((empty($_SESSION['pun_antispam_text']) || strcasecmp(trim($_POST['pun_antispam_input']), $_SESSION['pun_antispam_text']) !== 0))
        {
            if (!isset($_POST['preview']))
                $errors[] = $lang_pun_antispam['Invalid Text'];
        }
        else
            $_SESSION['pun_antispam_confirmed_user'] = 1;
    }

    $_SESSION['pun_antispam_text'] = '';

    // Post is to be written to DB, ask CAPTCHA for the next posting
    if (empty($errors) && !isset($_POST['preview']))
        $_SESSION['pun_antispam_confirmed_user'] = 0;
}
        ]]></hook>

        <hook id="po_pre_guest_info_fieldset_end"><![CDATA[
if ($forum_config['o_pun_antispam_captcha_guestpost'] == '1' && empty($_SESSION['pun_antispam_confirmed_user']))
{
?>
                <div class="sf-set set<?php echo ++$forum_page['item_count'] ?>">
                    <div class="sf-box text required">
                        <label for="fld<?php echo ++$forum_page['fld_count'] ?>"><span><?php echo $lang_pun_antispam['Captcha'] ?> <em><?php echo $lang_common['Required'] ?></em></span> <small><?php echo $lang_pun_antispam['Captcha Info'] ?></small></label><br />
                        <span class="fld-input"><input id="fld<?php echo $forum_page['fld_count'] ?>" type="text" name="pun_antispam_input" value="" size="20" maxlength="10" />&nbsp;&nbsp;&nbsp;<img src="<?php echo $ext_info['url'].'/image.php?'.md5(time()) ?>" alt="" /></span>
                    </div>
                </div>
<?php
}
        ]]></hook>

        <hook id="aop_features_avatars_fieldset_end"><![CDATA[

$forum_page['group_count'] = $forum_page['item_count'] = 0;

?>
            <div class="content-head">
                <h2 class="hn"><span><?php echo $lang_pun_antispam['Captcha admin head'] ?></span></h2>
            </div>
            <div class="ct-box"><p><?php echo $lang_pun_antispam['Captcha admin info'] ?></p></div>
            <fieldset class="frm-group group<?php echo ++$forum_page['group_count'] ?>">
                <legend class="group-legend"><span><?php echo $lang_pun_antispam['Captcha admin legend'] ?></span></legend>
                <div class="sf-set set<?php echo ++$forum_page['item_count'] ?>">
                    <div class="sf-box checkbox">
                        <span class="fld-input"><input type="checkbox" id="fld<?php echo ++$forum_page['fld_count'] ?>" name="form[pun_antispam_captcha_register]" value="1"<?php if ($forum_config['o_pun_antispam_captcha_register'] == '1') echo ' checked="checked"' ?> /></span>
                        <label for="fld<?php echo $forum_page['fld_count'] ?>"><span><?php echo $lang_pun_antispam['Captcha admin legend'] ?></span><?php echo $lang_pun_antispam['Captcha registrations info'] ?></label>
                    </div>
                </div>
                <div class="sf-set set<?php echo ++$forum_page['item_count'] ?>">
                    <div class="sf-box checkbox">
                        <span class="fld-input"><input type="checkbox" id="fld<?php echo ++$forum_page['fld_count'] ?>" name="form[pun_antispam_captcha_login]" value="1"<?php if ($forum_config['o_pun_antispam_captcha_login'] == '1') echo ' checked="checked"' ?> /></span>
                        <label for="fld<?php echo $forum_page['fld_count'] ?>"> <?php echo $lang_pun_antispam['Captcha login info'] ?></label>
                    </div>
                </div>
                <div class="sf-set set<?php echo ++$forum_page['item_count'] ?>">
                    <div class="sf-box checkbox">
                        <span class="fld-input"><input type="checkbox" id="fld<?php echo ++$forum_page['fld_count'] ?>" name="form[pun_antispam_captcha_guestpost]" value="1"<?php if ($forum_config['o_pun_antispam_captcha_guestpost'] == '1') echo ' checked="checked"' ?> /></span>
                        <label for="fld<?php echo $forum_page['fld_count'] ?>"> <?php echo $lang_pun_antispam['Captcha guestpost info'] ?></label>
                    </div>
                </div>
                <div class="sf-set set<?php echo ++$forum_page['item_count'] ?>">
                    <div class="sf-box checkbox">
                        <span class="fld-input"><input type="checkbox" id="fld<?php echo ++$forum_page['fld_count'] ?>" name="form[pun_antispam_captcha_restorepass]" value="1"<?php if ($forum_config['o_pun_antispam_captcha_restorepass'] == '1') echo ' checked="checked"' ?> /></span>
                        <label for="fld<?php echo $forum_page['fld_count'] ?>"> <?php echo $lang_pun_antispam['Captcha reset info'] ?></label>
                    </div>
                </div>
            </fieldset>
<?php

// Reset fieldset counter
$forum_page['set_count'] = 0;
        ]]></hook>

        <hook id="aop_features_validation"><![CDATA[
if (!isset($form['pun_antispam_captcha_register']) || $form['pun_antispam_captcha_register'] != '1') $form['pun_antispam_captcha_register'] = '0';
if (!isset($form['pun_antispam_captcha_login']) || $form['pun_antispam_captcha_login'] != '1') $form['pun_antispam_captcha_login'] = '0';
if (!isset($form['pun_antispam_captcha_guestpost']) || $form['pun_antispam_captcha_guestpost'] != '1') $form['pun_antispam_captcha_guestpost'] = '0';
if (!isset($form['pun_antispam_captcha_restorepass']) || $form['pun_antispam_captcha_restorepass'] != '1') $form['pun_antispam_captcha_restorepass'] = '0';
        ]]></hook>

        <hook id="co_common"><![CDATA[
$pun_extensions_used = array_merge(isset($pun_extensions_used) ? $pun_extensions_used : array(), array($ext_info['id']));
        ]]></hook>

        <hook id="ft_about_end" priority="10"><![CDATA[
if (!defined('PUN_EXTENSIONS_USED') && !empty($pun_extensions_used))
{
    define('PUN_EXTENSIONS_USED', 1);
    echo '<p id="extensions-used">Currently used extensions: '.implode(', ', $pun_extensions_used).'. Copyright &copy; 2008 <a href="http://punbb.informer.com/">PunBB</a></p>';
}
        ]]></hook>
    </hooks>

</extension>

You should just change maxtestedon version in manifest.xml
But not every extension will work.

380

(25 replies, posted in PunBB 1.4 additions)

Oh my God...
You have instruction on official KeyCaptcha site.

381

(25 replies, posted in PunBB 1.4 additions)

Trace wrote:

I don't understand you.
You must click on PunBB KeyCaptcha extension and register an account (don't forget to activate it via email).
Than you must fill the form. At the end of the form you will have next instructions and download link of the extension.
And here you have Fancy SS:
http://punbb.informer.com/forums/topic/ … stop-spam/

382

(25 replies, posted in PunBB 1.4 additions)

Depression? I don't understand you. Use Google Translator or ask on a forum in your language to help write a message for you.

383

(25 replies, posted in PunBB 1.4 additions)

KeyCAPTCHA is a free extension.
You can EARN MONEY with them. They are paying for you! You must only choose option with ads.
But you mustn't do that.

384

(25 replies, posted in PunBB 1.4 additions)

I don't understand you.
You must click on PunBB KeyCaptcha extension and register an account (don't forget to activate it via email).
Than you must fill the form. At the end of the form you will have next instructions and download link of the extension.
And here you have Fancy SS:
http://punbb.informer.com/forums/topic/ … stop-spam/

Are you sure you have uncommented this:

# Uncomment and properly set the RewriteBase if the rewrite rules are not working properly
#RewriteBase /

It should be:

# Uncomment and properly set the RewriteBase if the rewrite rules are not working properly
RewriteBase /

You mean that?
https://github.com/ashcs/punbb_extensio … orum_image

387

(7 replies, posted in Feature requests)

Here you have just download, English lang included:
http://cloud.github.com/downloads/KANek … _1.3.0.zip

388

(75 replies, posted in Supported extensions)

I am not sure, but it is very possible. I've tested it on PHP 5.3 and MySQL and it works! I'll test it later on SQLite also, and give you results.

Are you using Rack Nerds hosting? Are they servers on Apache, Lighttpd, or nginx? Is mod_rewrite function available at this host?

390

(2 replies, posted in PunBB 1.4 additions)

Sorry, but I don't understand.
You want Last visit in 1.4?
http://punbb.informer.com/forums/user/65420/

PS.

Change the topic name!!!

391

(25 replies, posted in PunBB 1.4 additions)

I don't like JS Captchas, but if I have time, I will do extension.
Now you can use two very good extensions:

  • pun_stop_bots

  • fancy_stop_spam


@EDIT

It is done by someone else.
https://www.keycaptcha.com/captcha-for-cms/
Search plugin for PunBB.

So, make a test account, because the email isn't delivering to me.

Give me a link, and I'll look. A screenshot isn't enough. I'd like to see also style code.

1. What do you like to be with border? Announcement or "Logien in as..." message?
2. Try to add <br> tag into templates.
You can find them in include/template and in PHP files in forum root.

395

(4 replies, posted in PunBB 1.4 additions)

Read this topic:
http://punbb.informer.com/forums/topic/ … choose-it/
Maybe tips there helps you.

396

(6 replies, posted in PunBB 1.4 additions)

https://github.com/KANekT/PunBB-extensi … master.zip

397

(6 replies, posted in PunBB 1.4 additions)

https://github.com/KANekT/PunBB-extensi … nline_plus

398

(75 replies, posted in Supported extensions)

Tested on PHP 5.3, works fine.
It is propably because some extensions don't support SQLite.

399

(110 replies, posted in Supported extensions)

Yes, you're right! But you should give admins permission to set what BBCode should be, and what not smile.

400

(28 replies, posted in PunBB 1.2 troubleshooting)

Change host.