Ich weiß, wie man überprüft, ob der Benutzer über PHP angemeldet ist, aber ich muss etwas stylen, wenn ein Ereignis eintritt, und ich habe dafür eine separate JavaScript-Datei erstellt. Ist das eine Drupal-Variable oder etwas, auf das ich mich beziehen kann?Wie überprüft man, ob ein Benutzer auf einer Drupal-Site über JavaScript eingeloggt ist?
Antwort
Erstellen Sie eine new custom module mit hook_init Implementierung.
function [YOUR_MODULE]_init()
{
global $user;
drupal_add_js(array('user_js_uid' => $user->uid), 'setting');
}
Dann in Ihrem JavaScript-Code, überprüfen Sie den Wert der Variablen in dem Modul definiert user_js_uid
.
if(Drupal.settings.user_js_uid == 0)
{
// execute code for non logged in users
}
else
{
// execute code for logged in users
}
hoffe, das hilft ... Muhammad
Wenn Sie warten auf das DOM bereit zu sein, und verwenden Standard-generierten Klassen Drupal CSS, Sie etwas tun könnte, wie (mit jQuery):
if($("body.not-logged-in").length)
{
// user is not logged in
}
Auf diese Weise müssen Sie keine Bibliothek zur Überprüfung hinzufügen. – Haje
Dies ist eine großartige Lösung, und Sie müssen kein benutzerdefiniertes Modul schreiben, wenn Sie nicht Varnish oder ähnliches verwenden – Bery
Wie dieser. Diese Methode benötigt kein PHP, sondern nur reines JavaScript. – Sunry
Die "nicht eingeloggte" Klasse scheint nicht in Vanille Drupal 8 zu existieren. Aber es gibt "Benutzer eingeloggt" statt. Hier ist eine Zeile CSS Ich bin mit dem benutzerdefinierten „Register“ Menüpunkt auszublenden, wenn ein Benutzer angemeldet ist:
body.user-logged-in a[href="/user/register"] {display: none; }
Für Drupal 8, wenn Sie Drupal.behaviors verwenden, können Sie die Benutzer-UID in Einstellungen zugreifen :
(function($, Drupal, viewport, settings) {
"use strict";
Drupal.behaviors.ifCE = { //the name of our behavior
attach: function (context, settings) {
var userUID = settings.user.uid;
//your code...
}
})(jQuery, Drupal, ResponsiveBootstrapToolkit, drupalSettings);
Also, wenn die userUID === 0
dann Benutzer ist nicht angeschlossen.
- 1. Wie überprüft man, ob Javascript deaktiviert ist?
- 2. Wie überprüfe ich, ob der Benutzer in Javascript eingeloggt ist
- 3. Wie überprüft man, ob ein Formular über Javascript eingereicht wird?
- 4. Wie überprüft man, ob ein Benutzer noch aktiv ist?
- 5. Thymoleaf mit Spring Security - Wie überprüft man, ob der Benutzer eingeloggt ist oder nicht?
- 6. Wie überprüft man, ob der Benutzer bereits eingeloggt ist oder nicht?
- 7. JavaScript: Wie überprüft man, ob ein Event gesetzt ist?
- 8. Wie überprüft man, ob eine Datei ein gültiges Bild ist?
- 9. Wie überprüft man, ob der Benutzer mit JavaScript oder einer anderen Bibliothek online ist?
- 10. vor jeder Komponente Render, wie überprüft werden, ob Benutzer in ReactJs eingeloggt ist oder nicht?
- 11. Wie überprüft man, ob ein Benutzer angemeldet ist (wie man user.is_authenticated richtig verwendet)?
- 12. C# - Überprüfen, ob der Benutzer eingeloggt ist Facebook
- 13. Prüfe, ob Steam läuft und der Benutzer eingeloggt ist
- 14. Wie überprüft man, ob ein Zeitversatz in der Sommerzeit ist?
- 15. Wie überprüft man, ob ein Sampler in GLSL null ist?
- 16. C - Wie überprüft man, ob ein Prozess ein Systemprozess ist?
- 17. Wie überprüft man, ob eine Variable in JavaScript geladen ist?
- 18. Wie überprüft man, ob ein div vorhanden ist oder nicht?
- 19. Wie überprüft man, ob ein Objekt kein Array ist?
- 20. Wie überprüft man, ob ein Datum nach heute ist? Java
- 21. Wie überprüft man, ob eine dreistellige Zahl ein Palindrom ist?
- 22. Wie überprüft man, ob ein Zeichen ein Apostroph ist?
- 23. Wie überprüft man, ob ein Java-Zeichen ein Währungssymbol ist
- 24. Wie überprüft man, ob ein Wort ein Palindrom ist?
- 25. Wie überprüft man, ob Macbook Lid über Terminal geschlossen ist?
- 26. Python: Wie überprüft man, ob ein optionaler Funktionsparameter gesetzt ist
- 27. wie überprüft man, ob die Benutzereingabe ein bestimmtes Zeichen ist
- 28. Wie überprüft man, ob ein Parameter wahr oder falsch ist?
- 29. Wie überprüft man, ob ein Datenattribut mit plain javascript existiert?
- 30. Wie überprüft man, ob ein Datum abgelaufen ist (PHP)
Sie tun Styling in Javascript? Sei sehr vorsichtig bei dem, was du in Javascript auf der Basis der Benutzerauthentifizierung tust. Es ist SEHR einfach für jedermann, das JS auf Ihrer Seite zu manipulieren. – Webnet