Hallo, Gast! (Registrieren)

Wir wünschen allen Besuchern frohe und besinnliche Weihnachten!

Letzte Ankündigung: MyBB 1.8.38 veröffentlicht (30.04.24)


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste
Ignore Funktion
#1
Hallo zusammen,

nachdem mir ja bei einem anderen Problem so schnell und gut geholfen wurde, habe ich ein erneutes anliegen.

Ist es möglich dass man die Ignore Funktion erweitern kann oder so?

User A ignoriert User B, dadurch kann User A keine Beiträge von User B lesen und keine PN's schicken. So ist das ja in mybb standard.

Ist es möglich dass auch User B die Beiträge und Themen von User A dann nicht mehr lesen kann ?

LG
Zitieren
#2
Nur mal ein Versuch....
Suche in der showthread.php folgende Zeilen
PHP-Code:
// Fetch the ignore list for the current user if they have one
$ignored_users = array();
if(
$mybb->user['uid'] > && $mybb->user['ignorelist'] != "")
{
    
$ignore_list explode(','$mybb->user['ignorelist']);
    foreach(
$ignore_list as $uid)
    {
        
$ignored_users[$uid] = 1;
    }

und ersetze es mit
PHP-Code:
// Fetch the ignore list for the current user if they have one
$ignored_users = array();
$ignored_by = array();
$query $db->simple_select("users""uid, ignorelist""{$mybb->user['uid']} IN (ignorelist)");
$ignored_by $db->fetch_array($query);
if(
$mybb->user['uid'] > 0)
{
  
$ignore_list explode(','$mybb->user['ignorelist']);
  
$ignore_list array_merge($ignore_list$ignored_by);
    foreach(
$ignore_list as $uid)
    {
        
$ignored_users[$uid] = 1;
    }

viele Grüße
Jockl
übersetzte und eigene Plugins
Zitieren
#3
Bekomme dann ganz oben einen Fehler
Zitat:Warning [2] array_merge(): Argument #2 is not an array - Line: 702 - File: showthread.php PHP 5.2.9-tuxtools-pl2-gentoo (Linux)

ansonsten funktioniert es, bis auf dass der ignorierte dann auch seine eigenen Beiträge nicht mehr lesen kann und die Usernamen zu groß angezeigt werden, was aber weniger schlimm wäre, da man das ja im Template fixen kann *denk*


Angehängte Dateien Thumbnail(s)
   
Zitieren
#4
Jep, da ist noch der Wurm drin. Hatte nicht alle Möglichkeiten berücksichtigt. Mal sehen, vielleicht hat ja auch jemand anderes Lust, dem nachzugehen.... Wink
viele Grüße
Jockl
übersetzte und eigene Plugins
Zitieren
#5
Ich hole mal kurz dieses Thema hoch...

Gibt es eine Möglichkeit im A-CP gegen Benutzer, die Ignorierfunktion gegen (Team)-Mitglieder zu deaktivieren?
Ein manueller Eingriff im Profil ist natürlich möglich, aber wohl keine Endlösung.

Vielen Dank vorab.
Zitieren
#6
In den Gruppen Einstellungen gibt es glaube ich den Punkt "kann nicht ignoriert werden" oder so, schau da mal nach.
Wenn es das ist was ich verstanden habe Smile
Zitieren
#7
Du kannst es im Template "usercp_editlists" auskommentieren. Somit ist es zumindest aus dem User-CP weg.

Dieser Teil ist dafür zuständig:
Code:
<form action="usercp.php" method="post" id="ignored" onsubmit="return UserCP.addBuddy('ignored');">
<input type="hidden" name="action" value="do_editlists" />
<input type="hidden" name="manage" value="ignored" />
<input type="hidden" name="my_post_key" value="{$mybb->post_code}" />
<table border="0" cellspacing="{$theme['borderwidth']}" cellpadding="{$theme['tablespace']}" class="tborder">
<tr>
<td class="thead" align="center"><strong>{$lang->edit_ignore_list}</strong></td>
</tr>
<tr>
<td class="trow1">
<fieldset>
<legend><strong>{$lang->add_ignored_users}</strong></legend>
<span class="smalltext">{$lang->add_ignored_users_desc}</span><br />
<div class="float_left" style="width: 120px; text-align: right;"><strong>{$lang->username_or_usernames}</strong></div>
<div style="margin-left: 130px;"><input type="text" name="add_username" id="ignored_add_username" style="width: 60%;" class="textbox" /> <input type="submit" value="{$lang->ignore_users}" id="ignored_submit" class="button" /></div>
<script type="text/javascript">
<!--
if(use_xmlhttprequest == "1")
{
MyBB.select2();
$("#ignored_add_username").select2({
placeholder: "{$lang->search_user}",
minimumInputLength: 2,
maximumSelectionSize: 5,
multiple: true,
ajax: { // instead of writing the function to execute the request we use Select2's convenient helper
url: "xmlhttp.php?action=get_users",
dataType: 'json',
data: function (term, page) {
return {
query: term, // search term
};
},
results: function (data, page) { // parse the results into the format expected by Select2.
// since we are using custom formatting functions we do not need to alter remote JSON data
return {results: data};
}
},
initSelection: function(element, callback) {
var query = $(element).val();
if (query !== "") {
var newqueries = [];
exp_queries = query.split(",");
$.each(exp_queries, function(index, value ){
if(value.replace(/\s/g, '') != "")
{
var newquery = {
id: value.replace(/,\s?/g, ", "),
text: value.replace(/,\s?/g, ", ")
};
newqueries.push(newquery);
}
});
callback(newqueries);
}
},
});
}
// -->
</script>
</fieldset>
<fieldset id="ignored_container">
<legend><strong>{$lang->current_ignored_users}</strong></legend>
<ul id="ignore_list" style="list-style: none;">
{$ignore_list}
</ul>
</fieldset>
</td>
</tr>
</table>
</form>

In den Gruppeneinstellungen habe ich dazu nichts gefunden.
Zitieren
#8
(21.05.2019, 08:57)Schnapsnase schrieb: Du kannst es im Template "usercp_editlists" auskommentieren. Somit ist es zumindest aus dem User-CP weg.

Dieser Teil ist dafür zuständig:
Code:
<form action="usercp.php" method="post" id="ignored" onsubmit="return UserCP.addBuddy('ignored');">
<input type="hidden" name="action" value="do_editlists" />
<input type="hidden" name="manage" value="ignored" />
<input type="hidden" name="my_post_key" value="{$mybb->post_code}" />
<table border="0" cellspacing="{$theme['borderwidth']}" cellpadding="{$theme['tablespace']}" class="tborder">
<tr>
<td class="thead" align="center"><strong>{$lang->edit_ignore_list}</strong></td>
</tr>
<tr>
<td class="trow1">
<fieldset>
<legend><strong>{$lang->add_ignored_users}</strong></legend>
<span class="smalltext">{$lang->add_ignored_users_desc}</span><br />
<div class="float_left" style="width: 120px; text-align: right;"><strong>{$lang->username_or_usernames}</strong></div>
<div style="margin-left: 130px;"><input type="text" name="add_username" id="ignored_add_username" style="width: 60%;" class="textbox" /> <input type="submit" value="{$lang->ignore_users}" id="ignored_submit" class="button" /></div>
<script type="text/javascript">
<!--
if(use_xmlhttprequest == "1")
{
MyBB.select2();
$("#ignored_add_username").select2({
placeholder: "{$lang->search_user}",
minimumInputLength: 2,
maximumSelectionSize: 5,
multiple: true,
ajax: { // instead of writing the function to execute the request we use Select2's convenient helper
url: "xmlhttp.php?action=get_users",
dataType: 'json',
data: function (term, page) {
return {
query: term, // search term
};
},
results: function (data, page) { // parse the results into the format expected by Select2.
// since we are using custom formatting functions we do not need to alter remote JSON data
return {results: data};
}
},
initSelection: function(element, callback) {
var query = $(element).val();
if (query !== "") {
var newqueries = [];
exp_queries = query.split(",");
$.each(exp_queries, function(index, value ){
if(value.replace(/\s/g, '') != "")
{
var newquery = {
id: value.replace(/,\s?/g, ", "),
text: value.replace(/,\s?/g, ", ")
};
newqueries.push(newquery);
}
});
callback(newqueries);
}
},
});
}
// -->
</script>
</fieldset>
<fieldset id="ignored_container">
<legend><strong>{$lang->current_ignored_users}</strong></legend>
<ul id="ignore_list" style="list-style: none;">
{$ignore_list}
</ul>
</fieldset>
</td>
</tr>
</table>
</form>

In den Gruppeneinstellungen habe ich dazu nichts gefunden.

dann kann aber keiner mehr ignorieren Big Grin
Zitieren
#9
(21.05.2019, 09:00)itsmeJAY schrieb: dann kann aber keiner mehr ignorieren Big Grin

Es wird ja auch schon genug ignoriert auf der Welt.... Big Grin Big Grin
Zitieren
#10
@lenoxk Danke, aber wo genau finde ich diese Einstellung? Oder bin ich blind?
@Schnapsnase Danke für die Antwort. Ganz ignorieren würde ich es nur ungern, eine Deaktivierung der Gruppen ist schon optimal, wenn es so klappen würde  Big Grin

Trotzdem danke an alle für die Hinweise!
Zitieren