v6 Frageforum: alert("asdas")

  • Seite 2 von 2
28.02.2023 13:13
#16 RE: v6 Frageforum: alert("asdas")
l2
Mitglied

die Brauchbarkeit eines Links aus dem Frageforum steht und fällt mit der richtigen Seitenangabe.
Derzeit hängt die Seitenzahl stark von der Anzahl der Kommentare ab, je mehr Kommentare in den VorgängerAntworten, je höher die Seitenzahl.
( auch in V4 )

Dabei sollte nur die Anzahl der vorherigen Antworten die Seitenzahl bestimmen.

Ausserdem gibt es auf der ersten Seite eine Antwort weniger als auf den Folgeseiten.

die ganze Abzählerei und Markierung der Frage/Antwort-Blöcke macht bei mir diese Funktion


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
 
	var msg_identify = function() { //* ..identify
 
var link4=function(id,i,gold,m){
id =id? (""+id) : "0";
let hash1= m=="m" ? "#msg":"#post_";
let href=location.pathname+hash1+id.substr(i);
let txt=("  "+hash1+id.substr(i)).small().fontcolor(gold);
return txt.link(href).replace(/<a/i,"<a target='_blank'");
}
 
let frs=document.querySelectorAll("div.card.warning"); // Frage
for (var fr of frs) {
let h5s = fr.querySelectorAll("h5.card-title");
for (var h5 of h5s) {
h5.innerHTML +=
// (" _ "+fr.id).small().fontcolor("cyan")
link4( fr.id,5,"gold","m")+link4( fr.id,5,"cyan","p");
}
}
 
let rg=/-(\d+).html/;
let r=rg.exec(location.pathname);
let seite= (r && r[1]) ? (1* r[1]) : 0;
 
let ia= seite==0 ? 1 : (seite*5 -1);
ia=1; // 0. Seite: 1 Frage und 4 Antworten -- nicht brauchbar
let cas = document.querySelectorAll("div.card.answer");
for ( var ca of cas) {
let h5 = ca.querySelector("h5.card-title");
if ( h5) { // post_999
h5.innerHTML =(""+(ia++)+".").small()+h5.innerHTML
+link4( ca.id,5,"gold","m")+link4( ca.id,5,"cyan","p");
}
let ic=1;
let coms=ca.querySelectorAll("div.mcommentdiv");
for (var com of coms) { // comment_3077
let ci=document.createElement("div");
ci.innerHTML=((ic++)+". "+com.id).small().fontcolor("gray")
+link4(com.id,8,"gold","m");
ci.style.display="block";
com.insertBefore(ci,com.firstChild);
}
} // h5

} // identify()
 
window.addEventListener('DOMContentLoaded',msg_identify} ,true );
 






... würde es „Fussball spielen” heissen

vG Bernd‍

 Antworten

 Beitrag melden
02.03.2023 17:06
#17 RE: v6 Frageforum: alert("asdas")
l2
Mitglied

Korrekur zum Test-Script in #16
in Zeile 49 ist ein "}" zu viel, es muss heißen:

  window.addEventListener('DOMContentLoaded',msg_identify ,true );



die gute Nachricht mit /topic.php?msgid=... wird man auf die richtige Seite geleitet, auch wenn neben Antworten noch Kommentare dabei sind

und das alert("asdas") gibt's nicht mehr.

Zitat von Ingmar im Beitrag #14

1
2
3
4
 

if ($('#comment_' + postid).length == 0) {
window.location = "/topic.php?msgid=" + postid;
}
 


Ich hoffe mal damit landet man dann immer bei der korrekten Antwort.



Ingmar, das war eine gute Idee.

So kann man im Frageforum/Umfrageforum mit dem folgenden Script die falsche berechneten Seitenzahlen der Links korrigieren:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
 
<script>
if (/t\d+f\d+-(.*).html#msg(\d+)/.test(window.location)
&& ! document.getElementById(window.location.hash.substr(1))) {

// im Frageforum auf den richtigen Beitrag positionieren
// https://www.hpm-support.de/t546943f11769158-v-Frageforum-alert-quot-asdas-quot.html
 
let nicht_nachfragen = true; // redirect nachfragen
 
let postid=window.location.hash.substr(4);
// console.log("MSG hash: "+location.hash+" postid: "+postid);
let post=document.getElementById("post_"+postid);
let com=document.getElementById("comment_"+postid);
if (post) {
post.scrollIntoView(true);
// console.log ("MSG auf Post positioniert: "+postid);
} else if (com ) {
// console.log ("MSG comment findet hashchangefunction(): "+postid);
} else if (nicht_nachfragen || confirm (
"Beitrag wurde nicht gefunden '"+location.hash+"'\npathname: "+location.pathname
+"\n\nmit topic.php?msgid="+postid+" neu aufrufen?")) {
window.location="/topic.php?msgid="+postid;
}
}
</script>
 



dieses Script kommt ohne jquery aus und kann damit im

Admin - Layout - Farben & Einstellungen - Eigenes HMTL/JS - Eigenes Javascript

eingetragen werden.

Habe ich auch im V6-Umfrageforum getestet und läuft.
Im Umfrageforum ist mir aufgefallen, dass Antworten erst ab Seite 2 kommentiert werden können. Aber das wäre wieder ein Thema für sich.





... würde es „Fussball spielen” heissen

vG Bernd‍

 Antworten

 Beitrag melden
02.03.2023 17:17
avatar  creator
#18 RE: v6 Frageforum: alert("asdas")
cr
Mitglied

Zitat von l2otbart_57 im Beitrag #17
dieses Script kommt ohne jquery aus und kann damit im

Admin - Layout - Farben & Einstellungen - Eigenes HMTL/JS - Eigenes Javascript

eingetragen werden.

Bei "Eigenes Javascript" kann übrigens auch jQuery-Code eingefügt werden. Der Code wird an einer Stelle ausgegeben, an der schon jQuery geladen ist.

Dass dort Javascript statt jQuery steht, ist vielleicht etwas irreführend.


 Antworten

 Beitrag melden
04.04.2023 23:12
#19 RE: v6 Frageforum: alert("asdas")
l2
Mitglied

hallo Ingmar,

bin immer noch mit dem Testen des Frageforums beschäftigt.

diese Form gibt es zwar schon ein paar Jahre -Das-neue-Fragen-und-Antworten-Forum-ist-da,

aber die Fehler, die z.B. hier Beitraege-werden-als-Kommentare-beliebig-eingesetzt angemerkt werden, existieren noch immer.

Ich dachte bisher, das käme nur im V6 vor.
Die Ursache für das Verwechseln von Kommentaren und Antworten ist das zufällige Fehlen der Frage auf den Folgeseiten.

Der Frage-beantworten-Link bezieht sich auf den ersten Beitrag/Post auf der Seite, wenn der nicht die Frage ist, wird der neue Beitrag zum Kommentar.

Wieso eine Folgeseite manchmal ohne Frage ausgeliefert wird, habe ich noch nicht rausgefunden. Kann sein, dass der gleiche Thread einmal komplett mit Frage auf der Folgeseite dargestellt wird, und einige Zeit später wieder nicht.

Habe mein Testforum extra mit 5 Beiträgen/Seite festgelegt, um möglichst viele Folgeseiten zu erhalten.

Erlaube ich im FrageForum zusätzlich noch Umfragen, werden auf der ersten Seite keine Kommentare angezeigt, es können auch keine erstellt werden.

Bewertet man dann eine Antwort (mit Kommentaren) auf den Folgeseiten, rückt sie auf die erste Seite und die angefügten Kommentare bleiben verschwunden wie im Bermudadreieck.





... würde es „Fussball spielen” heissen

vG Bernd‍

 Antworten

 Beitrag melden
11.04.2023 09:03
#20 RE: v6 Frageforum: alert("asdas")
l2
Mitglied

als Fragesteller oder Admin kann ich eine Antwort "als richtig" markieren,
nicht jedoch als zuständiger Moderator

da erhalte ich ein alert("postnotfound")





... würde es „Fussball spielen” heissen

vG Bernd‍

 Antworten

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