23.02.2009, 19:04
23.02.2009, 20:22
Achso danke... gibt es das denn auch für Version 1.4.x?
Gibt es überhaupt so ein "Regelbestätigungsplugin"?
LG Lenni94
Gibt es überhaupt so ein "Regelbestätigungsplugin"?
LG Lenni94
23.02.2009, 20:29
Verwende die Plugin-Datei "search_used.php" aus > Beitrag #56.
23.02.2009, 22:25
Danke, hat geklappt.
Vielen Dank
Lieben Gruß
Vielen Dank
Lieben Gruß
24.02.2009, 10:23
26.04.2009, 18:03
(03.01.2008, 22:26)Dave schrieb: [ -> ]Ich bin gerade dabei, ein kleines Plugin zu schreiben. Sollte nicht lange dauern.
//Edit
Ok, bin fertig. Das Plugin zeigt genau wie Michaels eine Seite, mit der Bestätigunsabfrage an, ...
das plugin "search_used.zip" von Dave ist wunderbar und es funktioniert ohne macken. ich würde nur gerne diese bestätigungsaufforderung auch beim erstellen einer antwort (also NICHT NUR beim erstellen eines neuen themas) angezeigt bekommen. was muss denn da geändert werden?
habe hier einen entwurf, doch ich bekomme bereits im ACP eine fehlermeldung.
Geänderter search_used code
PHP-Code:
<?php
// Disallow direct access to this file for security reasons
if(!defined("IN_MYBB"))
{
die("Direct initialization of this file is not allowed.<br /><br />Please make sure IN_MYBB is defined.");
}
$plugins->add_hook("newthread_start", "search_used");
$plugins->add_hook("newreply_start", "search_used");
function search_used_info()
{
return array(
"name" => "Regelbestätigung",
"description" => "Zeigt eine Abfrage beim Erstellen eines neuen Threads oder einer Antwort, ob die Suche benutzt wurde.",
"website" => "https://www.mybb.de",
"author" => "David Kleinmann aka Dave",
"authorsite" => "mailto:david@kleinmann-berlin.de",
"version" => "1.0",
);
}
function search_used_activate()
{
global $db, $lang;
$search_used_group = array(
"gid" => "NULL",
"name" => "search_used",
"title" => "Regelbestätigung",
"description" => "Zeigt eine Abfrage beim Erstellen eines neuen Threads oder einer Antwort, ob die Suche benutzt wurde.",
"disporder" => "1",
"isdefault" => "no",
);
$db->insert_query("settinggroups", $search_used_group);
$gid = $db->insert_id();
$search_used_heading = array(
"sid" => "NULL",
"name" => "search_used_heading",
"title" => "Überschrift",
"description" => "Die Überschrift der Tabelle",
"value" => "Regelbestätigung",
"optionscode" => "text",
"disporder" => "1",
"gid" => intval($gid),
);
$db->insert_query("settings", $search_used_heading);
$search_used_text = array(
"sid" => "NULL",
"name" => "search_used_text",
"title" => "Formular-Text",
"description" => "Der Text, der in der Abfrage angezeigt wird.",
"value" => "Auf dieser Seite musst du bestätigen, dass du bereits die Suche im Forum selbst und auf unserer Webseite genutzt hast. Du erlaubst den Moderatoren/Administratoren dieses Forums dein Thema zu entfernen, wenn deine Frage(n) schon mehrfach beantwortet wurde(n).",
"optionscode" => "text",
"disporder" => "1",
"gid" => intval($gid),
);
$db->insert_query("settings", $search_used_text);
$search_used_yes_text = array(
"sid" => "NULL",
"name" => "search_used_yes_text",
"title" => "Formular-Text 2",
"description" => "Der Text, der hinter der Checkbox steht.",
"value" => "Hiermit bestätige ich, dass ich die Suche benutzt habe und keine Antwort(en) auf meine Frage(n) gefunden habe.",
"optionscode" => "text",
"disporder" => "1",
"gid" => intval($gid),
);
$db->insert_query("settings", $search_used_yes_text);
$search_used_yes_text_2 = array(
"sid" => "NULL",
"name" => "search_used_yes_text_2",
"title" => "Formular-Text 3",
"description" => "Der Text, der hinter der Checkbox steht.",
"value" => "Hiermit bestätige ich, dass ich die Suche benutzt habe und keine Antwort(en) auf meine Frage(n) gefunden habe.",
"optionscode" => "text",
"disporder" => "1",
"gid" => intval($gid),
);
$db->insert_query("settings", $search_used_yes_text_2);
$search_used_submit = array(
"sid" => "NULL",
"name" => "search_used_submit",
"title" => "Button-Text",
"description" => "Der Text des Submit-Buttons",
"value" => "Abschicken",
"optionscode" => "text",
"disporder" => "1",
"gid" => intval($gid),
);
$db->insert_query("settings", $search_used_submit);
$search_used_fids = array(
"sid" => "NULL",
"name" => "search_used_fids",
"title" => "Die Foren IDs",
"description" => "Die IDs der Foren, in denen die Abfrage angezeigt werden soll. Bitte die IDs mit Komma getrennt eintragen.",
"optionscode" => "text",
"disporder" => "1",
"gid" => intval($gid),
);
$db->insert_query("settings", $search_used_fids);
$templatearray = array(
"tid" => "NULL",
"title" => "search_used",
"template" => "
<html>
<head>
<title>{\$title}</title>
{\$headerinclude}
</head>
<body>
{\$header}
<table border=\"0\" cellspacing=\"1\" cellpadding=\"3\" class=\"tborder\">
<tr>
<td class=\"thead\"><span class=\"smalltext\"><strong>{\$search_used_heading}</strong></span>
</td>
</tr>
<tr>
<td class=\"trow1\">{\$search_used_text}<br /><br />
<form action=\"newthread.php?fid={\$mybb->input[fid]}\" method=\"post\">
<input type=\"checkbox\" name=\"search_used\" value=\"yes\" /> <label for=\"search_used\"><strong>{\$search_used_yes_text}</strong></label><br />
<input type=\"checkbox\" name=\"search_used_2\" value=\"yes\" /> <label for=\"search_used_2\"><strong>{\$search_used_yes_text_2}</strong></label><br />
<div style=\"text-align: center;\"><input type=\"submit\" name=\"submit\" value=\"{\$search_used_submit}\" /></div>
</form>
</td>
</tr>
</table>
{\$footer}
</body>
</html>",
"sid" => "-1",
);
$db->insert_query("templates", $templatearray);
}
function search_used_deactivate()
{
global $db;
$query = $db->write_query("SELECT gid FROM ".TABLE_PREFIX."settinggroups WHERE name='search_used'");
$g = $db->fetch_array($query);
$db->write_query("DELETE FROM ".TABLE_PREFIX."settinggroups WHERE gid='".$g['gid']."'");
$db->write_query("DELETE FROM ".TABLE_PREFIX."settings WHERE gid='".$g['gid']."'");
$db->write_query("DELETE FROM ".TABLE_PREFIX."templates WHERE title='search_used'");
}
function search_used()
{
global $mybb, $templates, $headerinclude, $header, $footer, $theme, $lang;
$search_used_fids = explode(',',$mybb->settings['search_used_fids']);
if($mybb->input['action'] == "newthread" OR $mybb->input['action'] == "newreply" && !$mybb->input['previewpost'] && $mybb->input['search_used'] != "yes" && $mybb->input['search_used_2'] != "yes" && !$mybb->input['newattachment'] && !$mybb->input['rem'] && in_array($mybb->input['fid'],$search_used_fids)) {
if($mybb->user['language'] == "english") {
$title = htmlspecialchars_uni($mybb->settings['bbname'])." - New Thread";
}
elseif($mybb->user['language'] == "deutsch_sie") {
$title = htmlspecialchars_uni($mybb->settings['bbname'])." - Neues Thema";
}
else {
$title = htmlspecialchars_uni($mybb->settings['bbname'])." - Neues Thema";
}
$search_used_heading = $mybb->settings['search_used_heading'];
$search_used_text = $mybb->settings['search_used_text'];
$search_used_yes_text = $mybb->settings['search_used_yes_text'];
$search_used_yes_text_2 = $mybb->settings['search_used_yes_text_2'];
$search_used_submit = $mybb->settings['search_used_submit'];
eval("\$search_used = \"".$templates->get("search_used")."\";");
output_page($search_used);
exit;
}
}
?>
leider muss ich gestehen dass ich von php so viel ahnung habe wie eine kuh von der kernphysik
daher wäre es toll wenn mir jemand mit den fehlenden codezeilen behilflich sein könnte bzw. die falschen korrigieren würde..
27.04.2009, 12:58
Du könntest die Fehlermeldung natürlich auch noch nennen.
27.04.2009, 19:00
StefanT, ähhhm ja, hätte ich natürlich auch direkt machen können ...
Warning: Cannot add header information - headers already sent by (output started at /mnt/web4/50/37/51253537/htdocs/Forum/inc/plugins/search_used.php:364) in /mnt/web4/50/37/51253537/htdocs/Forum/admin/global.php on line 53
Warning: Cannot add header information - headers already sent by (output started at /mnt/web4/50/37/51253537/htdocs/Forum/inc/plugins/search_used.php:364) in /mnt/web4/50/37/51253537/htdocs/Forum/inc/plugins/utf8_header.php on line 32
Warning: Cannot add header information - headers already sent by (output started at /mnt/web4/50/37/51253537/htdocs/Forum/inc/plugins/search_used.php:364) in /mnt/web4/50/37/51253537/htdocs/Forum/admin/global.php on line 53
Warning: Cannot add header information - headers already sent by (output started at /mnt/web4/50/37/51253537/htdocs/Forum/inc/plugins/search_used.php:364) in /mnt/web4/50/37/51253537/htdocs/Forum/inc/plugins/utf8_header.php on line 32
27.04.2009, 23:21
Welchen Editor benutzt du? Stelle sicher, dass sich am Ende nach dem abschließenden ?> nichts mehr befindet - auch keine Leerzeichen.
28.04.2009, 00:01
nutze Dreamweaver CS3. ja, hinter dem abschließenden ?> waren noch leerzeichen. Fehlermeldung (s. o.) ist jetzt im ACP verschwunden, dafür kommt bei deaktivierung des Plugins folgende fehlermeldung:
Fatal error: Call to undefined function: write_query() in /mnt/web4/50/37/51253537/htdocs/Forum/inc/plugins/search_used.php on line 295
plugin wird auch nicht unter foreneinstellungen angezeigt wie bei dem original "search_used" script von dave. die bestätigung wird derzeit im forum so angezeigt: 2 leere checkboxen, sonst nichts (s. anhang)
Fatal error: Call to undefined function: write_query() in /mnt/web4/50/37/51253537/htdocs/Forum/inc/plugins/search_used.php on line 295
plugin wird auch nicht unter foreneinstellungen angezeigt wie bei dem original "search_used" script von dave. die bestätigung wird derzeit im forum so angezeigt: 2 leere checkboxen, sonst nichts (s. anhang)