Dołącz do zespołu ekspertów! Backend lub Frontend Developer?

Sprawdź najnowsze oferty pracy naszego partnera - 8lines.io!

Kody URL w prywatnej wiadomości.

MyCode  Założony przez  kpietrek.

Witajcie.

Powiedzcie proszę co może być nie tak, że w PM nie ma obsługi znacznika URL.

Mam plugin "PM On Registration". Po wpisaniu takiej treści:


[url=http://www.akwarystyka-miedziowa.pl/showthread.php?
tid=1229&page=100][color=#33cccc][b]Przywitaj się[/b][/color][/url].

Tylko [url] nie jest parsowany. Kolor i pogrubienie działa prawidłowo.
1. Sprawdź, czy wysyłając normalnie wiadomość przekształca link na prawidłową formę.
2. Jeśli to jest tylko w momencie wysyłania wiadomości za pomocą pluginu - upewnij się, czy nie ma w ustawieniach jakiejś opcji dt. parsowania.
3. Jeśli nie ma opcji - pokaż kod pluginu.
Prośby na PW dotyczące wsparcia z problemami będą ignorowane. Pomoc poza forum - odpłatna; kontakt: snakemybboard@gmail.com.
Ad. 1. Przy wysyłaniu normalnej PM kod przekształca prawidłowo w link.
Ad. 2. W ustawieniu plugina nie widzę ustawień od tych kodów.
Ad. 3. Kod pluginu poniżej.


<?php
// PM On Registration
// By DennisTT - http://www.dennistt.net
// Version 1.2.0

// This plugin (C) DennisTT 2008.  You may not redistribute this plugin without the permission from DennisTT.

if(!defined("IN_MYBB"))
{
 die(
"Direct initialization of this file is not allowed.<br /><br />Please make sure IN_MYBB is defined.");
}


function 
pmonreg_info()
{
 global 
$lang;
 
pmonreg_load_language();
 
 return array(
 
"name" => $lang->pmonreg,
 
"description" => $lang->pmonreg_desc,
 
"website" => "http://www.dennistt.net",
 
"author" => "DennisTT",
 
"authorsite" => "http://www.dennistt.net",
 
"version" => "1.2.0",
 
"guid"  => "eacf7cafb1fc90c53a27cbf2f4687449",
 
"compatibility"   => "18*",
 
 
// DennisTT custom info
 
"codename" => 'pmonreg',
 );
}

// Helper function to load the language variables
function pmonreg_load_language()
{
 global 
$lang;
 if(!
defined('DENNISTT_PMONREG_LANG_LOADED'))
 {
 
$lang->load('pmonreg'falsetrue);
 
 if(!isset(
$lang->pmonreg))
 {
 
$lang->pmonreg 'PM On Registration';
 
$lang->pmonreg_desc 'Automatically send a private message to newly registered users. For MyBB 1.4.x';
 }
 
 
define('DENNISTT_PMONREG_LANG_LOADED'1);
 }
}

// This function runs when the plugin is activated.
function pmonreg_activate()
{
 global 
$db$cache;
 
$info pmonreg_info();
 
 
// Deactivate to remove any existing settings
 
pmonreg_deactivate();

 
$setting_group_array = array(
 
'name' => str_replace(' ''_''dennistt_'.strtolower($info['codename'])),
 
'title' => "$info[name] (DennisTT)",
 
'description' => "Settings for the $info[name] plugin",
 
'disporder' => 1,
 
'isdefault' => 0,
 );
 
$db->insert_query('settinggroups'$setting_group_array);
 
$group $db->insert_id();
 
 
$settings = array(
 
'pmonreg_switch' => array('PM On Registration Main Switch''Send a private message on registration to new users?  This is the main switch; if this is disabled, none of the below settings will take effect, and PMs will not be sent.''onoff''1'),
 
'pmonreg_uid' => array('Sent By Whom?''Enter the user ID of the author of these automated private messages.''text''1'),
 
'pmonreg_cc_uids' => array('Carbon Copy To Users''Enter the user ID of any users that should be CC\'ed on each PM.  Separate by commas.''text'''),
 
'pmonreg_bcc_uids' => array('Blind Carbon Copy To Users''Enter the user ID of any users that should be BCC\'ed on each PM.  Separate by commas.''text'''),
 
'pmonreg_subject' => array('PM Subject''Enter the subject of the automated private messages.<br /><br />{username} will be replaced with the username of the recipient''text''Welcome!'),
 
'pmonreg_message' => array('PM Message''Enter the message of the automated private messages.<br /><br />{username} will be replaced with the username of the recipient''textarea''Hello {username}, and welcome to my MyBB forum!'),
 
'pmonreg_showsignature' => array('Show Signature?''Show the sender\'s signature?''yesno'1),
 
'pmonreg_disablesmilies' => array('Disable Smilies?''Disable smilies from showing?''yesno'0),
 
'pmonreg_savecopy' => array('Save A Copy?''Save a copy in the sender\'s Sent Items folder?''yesno'0),
 
'pmonreg_receipt' => array('Request Read Receipt?''Request read receipt from recipient?''yesno'0),
 );

 
$i 1;
 foreach(
$settings as $name => $sinfo)
 {
 
$insert_array = array(
 
'name' => $name,
 
'title' => $db->escape_string($sinfo[0]),
 
'description' => $db->escape_string($sinfo[1]),
 
'optionscode' => $db->escape_string($sinfo[2]),
 
'value' => $db->escape_string($sinfo[3]),
 
'gid' => $group,
 
'disporder' => $i,
 
'isdefault' => 0,
 );
 
$db->insert_query('settings'$insert_array);
 
$i++;
 }
 
rebuild_settings();

 
$cache->update('pmonreg_errors'0);
 
 
// Make sure activation usergroup has permission to read PMs...
 
$update_group = array('canusepms' => 1'pmquota' => 20);
 
$db->update_query('usergroups'$update_group'gid=5');
 
$cache->update_usergroups();
}

// This function runs when the plugin is deactivated.
function pmonreg_deactivate()
{
 global 
$db$cache;
 
$info pmonreg_info();

 
$result $db->simple_select('settinggroups''gid'"name = '".str_replace(' ''_''dennistt_'.strtolower($info['codename']))."'", array('limit' => 1));
 
$group $db->fetch_array($result);
 
 if(!empty(
$group['gid']))
 {
 
$db->delete_query('settinggroups'"gid='{$group['gid']}'");
 
$db->delete_query('settings'"gid='{$group['gid']}'");
 
rebuild_settings();
 }
 
$db->delete_query("datacache""title='pmonreg_errors'");
}

$plugins->add_hook("member_do_register_end""pmonreg_run");
function 
pmonreg_run()
{
 global 
$mybb$user_info$cache$user$lang;

 if(
$mybb->settings['pmonreg_switch'] != 0)
 {
 require_once 
MYBB_ROOT."inc/datahandlers/pm.php";
 
 
$pmhandler = new PMDataHandler();
 
 
$recipients_to = array($user_info['uid']);
 
$recipients_bcc = array();
 
 
// Handle CC list
 
$cc_list explode(','$mybb->settings['pmonreg_cc_uids']);
 foreach(
$cc_list as $cc_uid)
 {
 if(
intval($cc_uid))
 {
 
$recipients_to[] = intval($cc_uid);
 }
 }
 
 
// Handle BCC List
 
$bcc_list explode(','$mybb->settings['pmonreg_bcc_uids']);
 foreach(
$bcc_list as $bcc_uid)
 {
 if(
intval($bcc_uid))
 {
 
$recipients_bcc[] = intval($bcc_uid);
 }
 }
 
 
// Handle subject/message from language pack
 
$subject $mybb->settings['pmonreg_subject'];
 if(isset(
$lang->pmonreg_subject))
 {
 
$subject $lang->pmonreg_subject;
 }
 
 
$message $mybb->settings['pmonreg_message'];
 if(isset(
$lang->pmonreg_message))
 {
 
$message $lang->pmonreg_message;
 }
 

 
$pm = array(
 
"subject" => str_replace('{username}'$user['username'], $subject),
 
"message" => str_replace('{username}'$user['username'], $message),
 
"icon" => -1,
 
"fromid" => intval($mybb->settings['pmonreg_uid']),
 
"toid" => $recipients_to,
 
"bccid" => $recipients_bcc,
 
"do" => '',
 
"pmid" => ''
 
);
 
 
$pm['options'] = array(
 
"signature" => $mybb->settings['pmonreg_showsignature'],
 
"disablesmilies" => $mybb->settings['pmonreg_disablesmilies'],
 
"savecopy" => $mybb->settings['pmonreg_savecopy'],
 
"readreceipt" => $mybb->settings['pmonreg_receipt']
 );
 
$pm['saveasdraft'] = 0;
 
$pmhandler->admin_override 1;
 
$pmhandler->set_data($pm);
 if(
$pmhandler->validate_pm())
 {
 
$pmhandler->insert_pm();
 }
 else
 {
 
pmonreg_handle_error($pmhandler);
 }
 }
}

function 
pmonreg_handle_error(&$pmhandler)
{
 global 
$cache;
 
$errors $cache->read("rss2post_errors"); 
 if(
$errors === false)
 {
 
$errors '';
 } 
 
 
$errors .= 'Date: ' gmdate('r') . "\n";
 
 
$datahandler_errors $pmhandler->get_errors();
 
ob_start();
 
print_r($datahandler_errors);
 
$errors .= ob_get_clean();
 
$errors .= "\n\n===========================================\n\n";
 
 
$cache->update('pmonreg_errors'$errors);

[color=#33cccc][b][url=http://www.akwarystyka-miedziowa.pl/showthread.php?]Przywitaj się[/url][/b][/color]
Tak zadziała. Stylowanie musisz umieścić poza bbcode URL.
Kodowanie, edycja i tworzenie styli, for, stron, poszczególnych elementów - polecane szczególnie dla osób, które nie potrafią sobie poradzić z problemami.



Użytkownicy przeglądający ten wątek:

2 gości