26-06-2012, 11:01
Bonjour,
J'ai suivis ce tutoriel : http://mybb.fr/thread-4166.html Je désire créer un sujet à partir d'un plugin. Mais je n'arrive pas à comprendre pourquoi ça ne fonctionne pas...
Dans mon plugin j'ai mis ce code :
Aucune erreur n'est retourné et validate_thread() renvois vrai...
Corrigé !
Je me suis inspiré de : http://mods.mybb.com/view/report-to-thread
On obtient :
J'ai suivis ce tutoriel : http://mybb.fr/thread-4166.html Je désire créer un sujet à partir d'un plugin. Mais je n'arrive pas à comprendre pourquoi ça ne fonctionne pas...
Dans mon plugin j'ai mis ce code :
Code PHP :
require_once MYBB_ROOT."inc/datahandlers/post.php";
$poster = new PostDataHandler("insert");
$poster->action = "thread";
$nouveau_sujet = array(
"fid" => 10,
"subject" => 'Test',
"icon" => -1,
"uid" => 5,
"username" => "Information",
"message" => 'Vous pouvez laisser vos commentaires ici.',
"ipaddress" => '',
"posthash" => '',
"savedraft" => 0,
);
$nouveau_sujet['options'] = array(
"signature" => 'yes',
"emailnotify" => 'no',
"disablesmilies" => 'no'
);
$poster->set_data($nouveau_sujet);
if(!$poster->validate_thread()){
$result = 'fail';
$reason = 'unknow';
} else {
$result = 'success';
$reason = 'success';
}
Aucune erreur n'est retourné et validate_thread() renvois vrai...
Corrigé !
Je me suis inspiré de : http://mods.mybb.com/view/report-to-thread
On obtient :
Code PHP :
require_once MYBB_ROOT."inc/datahandlers/post.php";
$new_thread = array(
"fid" => 10,
"prefix" => 0,
"subject" => "titre " . $mybb->user['username'],
"icon" => 0,
"uid" => 5,
"username" => "nom",
"message" => "Voici mon message doudodudodudodudoudodu",
"ipaddress" => "",
"posthash" => md5($mybb->user['uid'] . random_str()),
);
$posthandler = new PostDataHandler("insert");
$posthandler->action = "thread";
$posthandler->set_data($new_thread);
if(!$posthandler->validate_thread()){
$result = 'fail';
$reason = 'unknow';
} else {
$thread_info = $posthandler->insert_thread();
$result = 'success';
$reason = 'success';
}