Entwickler-Talk

  • Seite 7 von 8
23.03.2018 16:25 (zuletzt bearbeitet: 23.03.2018 16:26)
avatar  Ali
#91 RE: Entwickler-Talk
Al
Ali
Mitglied

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.


 Antworten

 Beitrag melden
23.03.2018 22:15 (zuletzt bearbeitet: 23.03.2018 22:18)
avatar  Ali
#92 RE: Entwickler-Talk
Al
Ali
Mitglied

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?


 Antworten

 Beitrag melden
02.04.2018 15:30
avatar  Ali
#93 RE: Entwickler-Talk
Al
Ali
Mitglied

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


 Antworten

 Beitrag melden
02.04.2018 23:09 (zuletzt bearbeitet: 02.04.2018 23:10)
avatar  Olaf
#94 RE: Entwickler-Talk
Ol
Mitglied

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:

1
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:

1
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:

1
 
liste_abarbeiten()
 


Da Dein Funktionsaufruf nicht über die API läuft,brauch auch kein "xobor.plugin("plugin_id")....." davor.

Gruß
Olaf

__________________________

http://138600.homepagemodules.de/

 Antworten

 Beitrag melden
03.04.2018 00:52
avatar  Ali
#95 RE: Entwickler-Talk
Al
Ali
Mitglied

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.


 Antworten

 Beitrag melden
03.04.2018 15:10 (zuletzt bearbeitet: 03.04.2018 15:11)
avatar  Mike48
#96 RE: Entwickler-Talk
avatar
Mitglied

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.

1
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)

 Antworten

 Beitrag melden
09.08.2021 14:22
avatar  Mike48
#97 RE: Entwickler-Talk
avatar
Mitglied

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)

 Antworten

 Beitrag melden
09.08.2021 14:35
avatar  Ingmar
#98 RE: Entwickler-Talk
avatar
Technik

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.

Viele Grüße,
Ingmar


 Technik · Homepagemodules.de · Miranus GmbH

 Antworten

 Beitrag melden
31.10.2022 14:56 (zuletzt bearbeitet: 31.10.2022 14:56)
avatar  Mike48
#99 RE: Entwickler-Talk
avatar
Mitglied

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)

 Antworten

 Beitrag melden
01.11.2022 16:26
avatar  Ingmar
#100 RE: Entwickler-Talk
avatar
Technik

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.

Viele Grüße,
Ingmar


 Technik · Homepagemodules.de · Miranus GmbH

 Antworten

 Beitrag melden
01.11.2022 17:05
avatar  Mike48
#101 RE: Entwickler-Talk
avatar
Mitglied

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)

 Antworten

 Beitrag melden
01.11.2022 18:55 (zuletzt bearbeitet: 01.11.2022 18:55)
avatar  Mike48
#102 RE: Entwickler-Talk
avatar
Mitglied

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)

 Antworten

 Beitrag melden
01.11.2022 20:13
avatar  Mike48
#103 RE: Entwickler-Talk
avatar
Mitglied

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)

 Antworten

 Beitrag melden
02.11.2022 10:33 (zuletzt bearbeitet: 02.11.2022 10:35)
avatar  Mike48
#104 RE: Entwickler-Talk
avatar
Mitglied

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)

 Antworten

 Beitrag melden
09.01.2023 12:01
avatar  Mike48
#105 RE: Entwickler-Talk
avatar
Mitglied

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)

 Antworten

 Beitrag melden
Bereits Mitglied?
Jetzt anmelden!
Mitglied werden?
Jetzt registrieren!