Hallo,
Ich möchte meinen Blog bislang per .htaccess gesicherten Blog an eine breitere Leserschaft anpassen und dazu die bisherigen Leser über Benutzerkonten und Leserechten für bestimmte Artikel ausstatten.
Funktioniert auch tadellos.
Nun möchte ich aber das Plugin serendipity_plugin_comments benutzen, weil ich es sehr praktisch finde. Dabei werden von dem Plugin aber die Rechte des jeweilig angemeldeten Benutzers ignoriert und auch Kommentare zu Einträgen angezeigt, die er nicht Lesen kann.
Gibt es dazu eine Lösung?
Gibt es eine Möglichkeit, das Plugin um die gewünschte Funktion zu erweitern?
Viele Grüße
Benutzerverwaltung und Plugin comments
-
garvinhicking
- Core Developer
- Posts: 30022
- Joined: Tue Sep 16, 2003 9:45 pm
- Location: Cologne, Germany
- Contact:
Re: Benutzerverwaltung und Plugin comments
Hi!
Es ist leider für die SQL-Abfrage nicht so trivial, dort die Teile einzubauen damit die Userrechte ausgelesen werden können. Machbar wäre das, ich kann Dir da auf die Schnelle aber leider nicht helfen. Kommentare sind im Gegensatzu zu den Artikeln nicht geschützt, daher würde ich evtl. vielleicht dieses Seitenleistenplugin für Nicht-Eingeloggte Autoren komplett verstecken? (über das serendipity_event_sidebarhider Plugin)
Viele Grüße,
Garvin
Es ist leider für die SQL-Abfrage nicht so trivial, dort die Teile einzubauen damit die Userrechte ausgelesen werden können. Machbar wäre das, ich kann Dir da auf die Schnelle aber leider nicht helfen. Kommentare sind im Gegensatzu zu den Artikeln nicht geschützt, daher würde ich evtl. vielleicht dieses Seitenleistenplugin für Nicht-Eingeloggte Autoren komplett verstecken? (über das serendipity_event_sidebarhider Plugin)
Viele Grüße,
Garvin
# Garvin Hicking (s9y Developer)
# Did I help you? Consider making me happy: http://wishes.garv.in/
# or use my PayPal account "paypal {at} supergarv (dot) de"
# My "other" hobby: http://flickr.garv.in/
# Did I help you? Consider making me happy: http://wishes.garv.in/
# or use my PayPal account "paypal {at} supergarv (dot) de"
# My "other" hobby: http://flickr.garv.in/
Re: Benutzerverwaltung und Plugin comments
Hi,
Danke für den Tipp mit dem Verstecken.
Ich habe sowieso den direkten Link zum Kommentar nicht mitangezeigt, also kann man den Kommentar auch nicht lesen. (Außer man kann da irgendwie anders darauf schließen)
Hmmm, ich hätte gerne mehrere Benutzergruppen angelegt, die voneinander so wenig wie möglich mitbekommen sollen.
zB. Blog für Freunde, Urlaubsposts für Familie, Posts für alle, Einträge für Fußballclub usw.
Klar wissen alle, zB. über die Tag-Wolke, oder das Statistik-Plugin dass "mehr" hinter dem Blog ist, aber bei den Kommentaren werden auch die Titel zu den Einträgen angezeigt....
Grüße
Danke für den Tipp mit dem Verstecken.
Ich habe sowieso den direkten Link zum Kommentar nicht mitangezeigt, also kann man den Kommentar auch nicht lesen. (Außer man kann da irgendwie anders darauf schließen)
Hmmm, ich hätte gerne mehrere Benutzergruppen angelegt, die voneinander so wenig wie möglich mitbekommen sollen.
zB. Blog für Freunde, Urlaubsposts für Familie, Posts für alle, Einträge für Fußballclub usw.
Klar wissen alle, zB. über die Tag-Wolke, oder das Statistik-Plugin dass "mehr" hinter dem Blog ist, aber bei den Kommentaren werden auch die Titel zu den Einträgen angezeigt....
Grüße
-
garvinhicking
- Core Developer
- Posts: 30022
- Joined: Tue Sep 16, 2003 9:45 pm
- Location: Cologne, Germany
- Contact:
Re: Benutzerverwaltung und Plugin comments
Hi!
Ich habe da mal auf die schnelle was probiert - guck mal ob du mit diesem neuen plugin:
http://svn.berlios.de/viewcvs/*checkout ... ision=2586
das erreichen kannst. Einfach über deine jetzige serendipity_plugin_comments.php schreiben, das plugin in s9y konfigurieren und Categories auf "login" stellen im Dropdown.
Grüße,
Garvin
Ich habe da mal auf die schnelle was probiert - guck mal ob du mit diesem neuen plugin:
http://svn.berlios.de/viewcvs/*checkout ... ision=2586
das erreichen kannst. Einfach über deine jetzige serendipity_plugin_comments.php schreiben, das plugin in s9y konfigurieren und Categories auf "login" stellen im Dropdown.
Grüße,
Garvin
# Garvin Hicking (s9y Developer)
# Did I help you? Consider making me happy: http://wishes.garv.in/
# or use my PayPal account "paypal {at} supergarv (dot) de"
# My "other" hobby: http://flickr.garv.in/
# Did I help you? Consider making me happy: http://wishes.garv.in/
# or use my PayPal account "paypal {at} supergarv (dot) de"
# My "other" hobby: http://flickr.garv.in/
Re: Benutzerverwaltung und Plugin comments
Hallo Garvin,
um jetzt zu erklären warum ich für Bigbear antworte:
wir arbeiten beide an dem Thema und sind an einer Lösung interessiert.
Ich habe deine Lösung ausprobiert, mit dem Ergebnis dass bei nicht-eingeloggtem User trotzdem Kommentare von Beiträgen erscheinen, die nicht öffentlich sind (entryproperties ep_access = member und ep_access_groups = ;x;y;z;)
Ich hab das Plugin ergänzt und es funktioniert.
1:n Beziehung als Text in value zu Speichern machts zwar nicht einfach und elegant, aber es geht.
um jetzt zu erklären warum ich für Bigbear antworte:
wir arbeiten beide an dem Thema und sind an einer Lösung interessiert.
Ich habe deine Lösung ausprobiert, mit dem Ergebnis dass bei nicht-eingeloggtem User trotzdem Kommentare von Beiträgen erscheinen, die nicht öffentlich sind (entryproperties ep_access = member und ep_access_groups = ;x;y;z;)
Ich hab das Plugin ergänzt und es funktioniert.
1:n Beziehung als Text in value zu Speichern machts zwar nicht einfach und elegant, aber es geht.
Code: Select all
$viewtype = '';
if ($this->get_config('viewmode') == 'comments') {
$viewtype .= ' AND c.type = \'NORMAL\'';
} elseif ($this->get_config('viewmode') == 'trackbacks') {
$viewtype .= ' AND c.type = \'TRACKBACK\'';
}
$q = 'SELECT g.groupid AS groups
FROM _authors AS a, _authorgroups AS g
WHERE a.username = \'' . $_SESSION['serendipityUser'] . '\'
AND a.authorid = g.authorid';
$sql = serendipity_db_query($q);
$str = '';
if ($sql && is_array($sql))
{
foreach($sql AS $key => $row)
{
$str .= 'p.value LIKE \'%;' . $row['groups'] . ';%\' OR ';
}
}
if($str != '')
{
$groupperm = 'OR (p.property = \'ep_access_groups\' AND (' . substr($str, 0, -4) . '))';
}
else
$groupperm = '';
$q = 'SELECT c.body AS comment,
c.timestamp AS stamp,
c.author AS user,
e.title AS subject,
e.timestamp AS entrystamp,
e.id AS entry_id,
c.id AS comment_id,
c.type AS comment_type,
c.url AS comment_url,
c.title AS comment_title,
c.email AS comment_email
FROM '.$serendipity['dbPrefix'].'comments AS c,
'.$serendipity['dbPrefix'].'entries AS e,
'.$serendipity['dbPrefix'].'entryproperties AS p
WHERE e.id = c.entry_id
AND c.entry_id = p.entryid
AND NOT (c.type = \'TRACKBACK\' AND c.author = \'' . serendipity_db_escape_string($serendipity['blogTitle']) . '\' AND c.title != \'\')
AND e.isdraft = \'false\'
AND c.status = \'approved\'
' . $viewtype . '
AND ((p.property = \'ep_access\' AND p.value = \'public\') ' . $groupperm . ')
ORDER BY c.timestamp DESC
LIMIT ' . $max_entries;
$sql = serendipity_db_query($q);
-
garvinhicking
- Core Developer
- Posts: 30022
- Joined: Tue Sep 16, 2003 9:45 pm
- Location: Cologne, Germany
- Contact:
Re: Benutzerverwaltung und Plugin comments
Hi!
Danke für die Mithilfe. Dein grundsätzlicher Ansatz ist schon richtig, und ich habe gesehen dass ich bisher nur auf Kategorie-Ebene das neue implementiert habe.
Besser wäre es, das was Du hartkodiert gesetzt hast, über das ursprüngliche Plugin zu routen. Das würde gehen wenn Du direkt unter der Zeile serendipity_ACL_SQL($cond, true); in meinem ursprünglichen Patch folgendes einsetzt:
Das setzt die notwendigen Bedingungen dann in $cond['and'] ein, und dürfte im Endeffekt in einer ähnlichen Query wie deiner jetzigen resultieren.
Wenn Du das testen könntest wäre es toll, dann könnte ich das Plugin auch offiziell so modifizieren.
Grüße,
Garvin
Danke für die Mithilfe. Dein grundsätzlicher Ansatz ist schon richtig, und ich habe gesehen dass ich bisher nur auf Kategorie-Ebene das neue implementiert habe.
Besser wäre es, das was Du hartkodiert gesetzt hast, über das ursprüngliche Plugin zu routen. Das würde gehen wenn Du direkt unter der Zeile serendipity_ACL_SQL($cond, true); in meinem ursprünglichen Patch folgendes einsetzt:
Code: Select all
serendipity_plugin_api::hook_event('frontend_fetchentries', $cond, array('source' => 'entries'));
Wenn Du das testen könntest wäre es toll, dann könnte ich das Plugin auch offiziell so modifizieren.
Grüße,
Garvin
# Garvin Hicking (s9y Developer)
# Did I help you? Consider making me happy: http://wishes.garv.in/
# or use my PayPal account "paypal {at} supergarv (dot) de"
# My "other" hobby: http://flickr.garv.in/
# Did I help you? Consider making me happy: http://wishes.garv.in/
# or use my PayPal account "paypal {at} supergarv (dot) de"
# My "other" hobby: http://flickr.garv.in/
Re: Benutzerverwaltung und Plugin comments
Morgen,
funktioniert leider nicht.
$cond bleibt wie es ist.
funktioniert leider nicht.
$cond bleibt wie es ist.