Bitte geben Sie einen Grund für die Verwarnung an
Der Grund erscheint unter dem Beitrag.Bei einer weiteren Verwarnung wird das Mitglied automatisch gesperrt.
Entwickler-Talk
Ich habe es jetzt sowohl als Hidden-Var, als auch als nicht versteckte Variable probiert. Funktioniert beides.
Wenn ich es in dieser Form schreibe:
xobor.plugin("plugin_id").setGlob("liste","345345345");
xobor.plugin("plugin_id").getGlob("liste",0,function(res) {
alert("Var liste = " + res);
});
Naja, mit dieser getGlob-Funktion kann ich die Variable "liste" vom Server laden. Wenn ich vorher nirgends "var liste = ..." stehen hab, kann er doch nur die Variable "liste" vom Server geholt haben?
Wenn sie, wie in diesem Fall als callback-Funktion verwendet wird, heißt das dann, er liest sie vom Server,
das bedeutet wiederum: Es ist auf jeden Fall auf dem Server gespeichert, und ich kann weiterarbeiten.
Interessant, Olaf. Bei mir hat's nicht geklappt. Auch nicht hidden und auch als text.
Wie global verfügbare Plugin-Funktion erzeugen?
Vielen lieben Dank für eure Hilfen bisher.
Habe aber leider immernoch ein kleines Problem.
Meinen bisher geschriebenen User-spezifischen Code habe ich in die Templates "Profil bearbeiten" und "Mitglieder Profil" direkt reingeschrieben.
Jetzt wollte ich, dass eine Funktion des Plugins überall verfügbar ist. Aber man kann nur globale Variablen erzeugen. Keine globalen Funktionen. Habe daher im Plugin-Menü ein neues Element "Template" erstellt - "Javascript - Standard, immer geladen".
Dort habe ich eine Funktion reingeschrieben. Diese Funktion nennt sich "liste_abarbeiten".
Ist folgender Funktionsaufruf innerhalb des "Mitglieder Profil"-Templates korrekt?
xobor.plugin("plugin_id").liste_abarbeiten();
Er scheint nicht dadrauf zuzugreifen.
Habt ihr vielleicht einen Rat?
Halli-Hallo.
Gibt es inzwischen auch eine Möglichkeit, zwecks Ressourcenschonung eine Userseparated-Variable von mehreren User-Ids, sagen wir mal User-Ids 2, 3 und 7 durch einen einzigen Aufruf zu holen? Oder meinetwegen auch die Userseparated-Variable aller vorhandenen User?
Liebe Grüße,
Ali
Du mußt mal die Dokumentation der Plugin API anschauen:
https://www.xobor.de/plugin-doc-api.html
Hier mal ein Beispiel,wie Du z.B. die Beitragszahlen von den Usern in Deiner Anfrage "2,3,7" bekommst:
2
3
4
5
6
7
8
9
10
<script>
var data = {target_id: [2,3,7], target_type: "3"};
xobor.plugin('Plugin_ID').getDeep(data,function(result){
var user_post = [];
$.each(result, function(key,value) {
user_post.push(value['user_posts']);
})
alert(user_post);
});
</script>
Du kannst auch alle User-ID von Deinem ganzen Forum abfragen:
2
3
4
5
6
7
8
9
10
11
<script>
var data = {target_type:'3',limit:'all'};
xobor.plugin('Plugin_ID').getDeepList(data,function(result){
var userids = [];
$.each(result, function(key,value) {
userids.push(key);
})
alert(userids);
});
</script>
So kannst Du fast alles von der Datenbank abfragen.
Zitat von Ali im Beitrag #92
Ist folgender Funktionsaufruf innerhalb des "Mitglieder Profil"-Templates korrekt?xobor.plugin("plugin_id").liste_abarbeiten();
Nein.
Normale Funktionsaufrufe werden so geschrieben:
liste_abarbeiten()
Da Dein Funktionsaufruf nicht über die API läuft,brauch auch kein "xobor.plugin("plugin_id")....." davor.
Gruß
Olaf
Ich habe es tatsächlich hingekriegt! Über 'call' und 'userDataVarList'.
In getDeep und getDeepList habe ich jedenfalls nicht auf die userseparated-Var zugreifen können.
// String aller ids, die auf der Landkarte angezeigt werden sollen; getrennt mit '^'
var listeallerids = xobor.plugin('plugin_id').getGlob('ids_sichtbarer_user');
var landkartenarray = [];
// Die Koordinaten jedes Users sind in einer userseparated-var gespeichert. Diese wird von allen Usern geholt
xobor.plugin('plugin_id').call('userDataVarList',{varname : 'einzeluser_landkartendaten', origin_type : '3'}, function(result){
$.each(result, function(key, value) {
// Der Key ist die ID
gesuchte_zeichenkette = '^' + key + '^';
// Wenn der Key im String vorkommt, ist es ein sichtbarer User
if (listeallerids.indexOf(gesuchte_zeichenkette) > -1) {landkartenarray.push(value.value);}
});
landkartenarray = landkartenarray.join('^');
// Das Gesamtarray wird abgespeichert
xobor.plugin('plugin_id').setGlob('landkartenarray',landkartenarray);
});
Interessanterweise konnte ich die origin-id weglassen.
Ich hatte irgendwo mal gelesen, dass globale Variablen nicht auf 'Eigenen Seiten' zur Verfügung stehen. Gibt es da einen Trick?
Werd auf jeden Fall jetzt weiterhin stundenlang rumprobieren. (kopfkratz)
Danke Olaf.
Zitat von Ali im Beitrag #92
Aber man kann nur globale Variablen erzeugen. Keine globalen Funktionen.
Man kann auch Funktionen bzw. Code in Variablen speichern, indem man den Code in eine Textvariable schreibt.
Hier Beispiele mit einer Globalen Variablen und einer Variablen die im Plugin als Variable angelegt ist.
2
3
4
5
6
7
8
9
10
11
12
13
<!-- Globale Variable erzeugen -->
{{testGlobalVar1.start}}"<script>$('#cat_31').hide();alert('Script in Globaler Variable 1');</script>"{{testGlobalVar1.end}}
<!-- Die global erzeugte Variable verwenden -->
{{testGlobalVar1}}
<!-- Funktion bzw. Code in eine globale Variable des Plugins speichern -->
xobor.plugin('fox01h').getGlob('testglobal',"<script>$('#cat_31').hide();alert('Script in Variable');</script>");
<!-- Die globale Variable des Plugins verwenden -->
{{plugin_fox01h_global_testglobal}}
www.friends-of-xobor.de (621181 - Template kann wechsel bei Pluin Tests)
www.seniorenclub-sel-koeln.de (578865 - V6 Template)
Hallo @Ingmar
ich suche ein Action Element das der User auslöst ohne dass er etwas Besonderes im Forum machen muss.
Die Aktion sollte ausgelöst werden wenn er
- sich anmeldet per Cookie oder manuell
- oder eine Seite wechselt.
Wofür sind die folgenden Action Elemente?
- user_login
- feed_entry
- forum_forum
- integration_integration
- plugin
Bei user_login habe ich keine Action feststellen können.
www.friends-of-xobor.de (621181 - Template kann wechsel bei Pluin Tests)
www.seniorenclub-sel-koeln.de (578865 - V6 Template)
Das Action-Element ist per Definition immer an eine "Aktion" geknüpft.
Bei einem Seitenwechsel kann das nicht ausgelöst werden.
user_login wird glaube ich nur beim Absenden des Login-Formulars ausgeführt, nicht beim Login per Cookie.
Hallo @Ingmar
wie kommt man in einem Plugin im Element Thread - Flat an die Moderatoren für das entsprechende Forum?
Oder wie kann man erfahren, ob der Ersteller eines Beitrags auch ein Moderator für das Forum ist?
www.friends-of-xobor.de (621181 - Template kann wechsel bei Pluin Tests)
www.seniorenclub-sel-koeln.de (578865 - V6 Template)
Letzteres müsste mit {{message:user_moderator==true.start}} möglich sein. Ich bin allerdings gerade nicht sicher, ob das für alle Mods "true" ist, oder nur für Mods im gerade besuchten Unterforum.
Eine Moderatoren-Liste gibt es in "Thread Flat" nicht. Das könnte ich dir aber mit einem der nächsten Updates in einer Template-Variable ausgeben.
Das trifft nur zu wenn man man selbst Moderator ist
www.friends-of-xobor.de (621181 - Template kann wechsel bei Pluin Tests)
www.seniorenclub-sel-koeln.de (578865 - V6 Template)
Zitat von Ingmar im Beitrag #100
{{message:user_moderator==true.start}} . . . {{message:user_moderator==true.end}}
Das scheint doch eine Möglichkeit zu sein.
Wenn ein Beitrag von irgend einem Moderator ist, dann ist das True.
Ich teste das mal.
www.friends-of-xobor.de (621181 - Template kann wechsel bei Pluin Tests)
www.seniorenclub-sel-koeln.de (578865 - V6 Template)
Zitat von Mike48 im Beitrag #102
{{message:user_moderator==true.start}} . . . {{message:user_moderator==true.end}}
Geht doch nicht wie gedacht.
{{message:user_moderator}} ist bei allen Beiträgen von Moderatoren True unabhängig davon, ob sie in dem Forum Moderator sind.
www.friends-of-xobor.de (621181 - Template kann wechsel bei Pluin Tests)
www.seniorenclub-sel-koeln.de (578865 - V6 Template)
Zitat von Ingmar im Beitrag #100
Eine Moderatoren-Liste gibt es in "Thread Flat" nicht. Das könnte ich dir aber mit einem der nächsten Updates in einer Template-Variable ausgeben.
Das wäre sehr hilfreich.
www.friends-of-xobor.de (621181 - Template kann wechsel bei Pluin Tests)
www.seniorenclub-sel-koeln.de (578865 - V6 Template)
Zitat von Mike48 im Beitrag V6 - Portal als Startseite auch bei Handys
Wann taucht das Portal denn mal in der Template-Entwicklung auf und in der Plugin-Entwicklung als Element auf?
Gibt es hier zu eine Antwort?
www.friends-of-xobor.de (621181 - Template kann wechsel bei Pluin Tests)
www.seniorenclub-sel-koeln.de (578865 - V6 Template)
- Informationen
- Aktuelle News
- Forum Tutorials - Tipps und Anleitungen
- SEO / Werbung fürs Forum
- Verwaltung
- Extras
- Design
- Plugin(system)
- Eure Fragen zu Tutorials
- Forum Support
- Fragen und Antworten
- Pluginsystem
- Plugins
- Templates & Sprachen
- Bugreport
- Verbesserungsvorschläge
- Sponsoren gesucht
- Das neue Xobor Business-Template
- News und Updates
- Bugreport
- Allgemeines Feedback
- Verbesserungsvorschläge
- Sonstiges
- Kaffeeklatsch
- Lob & Kritik
- Verbesserungsvorschläge
- Allgemeine Fragen
- Fehlermeldungen
- Verbesserungsvorschläge Responsive Design
- Bugreport Responsive Design
- Archiv - Alter Betatest
- Responsive Design - Verbesserungsvorschläge
- Responsive Design - Bugreport
- Fragen zum neuen Template
- Neue Administration Beta Test
- Bugreport Neue Administration
- Allgemeines Fragen & Feedback
- Verbesserungsvorschläge zur neuen Administration
- Shoutbox
Ähnliche Themen
Jetzt anmelden!
Jetzt registrieren!
© 2017 Xobor | Forum-Software