Hallo, Gast! (Registrieren)

Letzte Ankündigung: Sicherheitsupdate: MyBB 1.8.26 veröffentlicht (10.03.21)


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste
DVZ Shoutbox
#21
(03.05.2021, 16:37)Gerti schrieb: Denke das dürfte Deinem Anliegen gerecht werden.

Ich bin kein Programmierer und sage deshalb nicht, dass es unsauber ist. Wink 
Es macht aber die gesamte Funktion ad absurdum.

Warum dann nicht die Option von SvePu annehmen, die Funktion entfernen und einmal Cookies löschen?!
Alle sind glücklich, alles ist fein. Wink Big Grin
Zitieren
#22
Gerti, danke dir! Schaue ich mir später gleich mal an!

Sag mal, SvePu und Schnapsnase, habt ihr denn auch ein Forum? Toungue Toungue
Gab es da schon mal den Fall, dass alle eure User auf euch gehört haben? Big Grin
Wenn ja, dann verratet mir bitte wie ihr das gemacht habt! Big Grin

Die User um was bitten... Scherzkekse. Toungue
Wenn das so einfach wäre, hätten schon alle die Shoutbox aufgeklickt.^^

Mir ist ganz egal, ob die Funktion danach an ihrer Existenz zweifelt, die hat diese eh nicht verdient. Cool
Zitieren
#23
(11.05.2021, 12:11)skrilaxrev schrieb: Sag mal, SvePu und Schnapsnase, habt ihr denn auch ein Forum? Toungue Toungue
Ja, nicht nur eins. Toungue

(11.05.2021, 12:11)skrilaxrev schrieb: Gab es da schon mal den Fall, dass alle eure User auf euch gehört haben?
Ist unnötig. Ich warte, bis sie sich "beschweren" und antworte dann. Big Grin Toungue
Zitieren
#24
Haha, auch ne gute Taktik. Big Grin

(03.05.2021, 16:37)Gerti schrieb:
(30.04.2021, 11:59)skrilaxrev schrieb: weiß jemand wie man die Shoutbox dazu zwingt immer "offen" zu sein?
Soeben mal getestet. Wenn man in ./jscripts/dvz_shoutbox.js in Zeile 395
von:
PHP-Code:
// functionality
    toggle: function(statusremember) {

    if (status == true) { 
nach
PHP-Code:
// functionality
    toggle: function(statusremember) {

    if (status == false) { 
ändert, bleibt die Box immer aufgeklappt.

Denke das dürfte Deinem Anliegen gerecht werden.

Ah, das ist ja die selbe Funktion, an der ich rumgedoktort habe.

Das funktioniert so aber nicht. @Gerti

Klappe beim Testen die Shoutbox zu, bevor du die Funktion anpasst.
Dann bleibt sie zugeklappt und man kann sie nicht mehr aufklappen.
(bzw. sie wird weis/leer angezeigt - siehe Screenshot im 1. Beitrag)

Da ist meine aktuelle Variante noch besser.

PHP-Code:
// functionality
   
toggle: function(statusremember) {
        
        if (
status == false) {
            return;
            }

        if (
status == true) {

            
dvz_shoutbox.status true;

            $(
'#shoutbox').removeClass('collapsed');
            $(
'#shoutbox .body').fadeIn();

            if (
dvz_shoutbox.frozen || !dvz_shoutbox.started) {
                
dvz_shoutbox.frozen false;
                
dvz_shoutbox.loop();
            }
        }

        if (
remember !== false) {
            
Cookie.set('dvz_sb_status'status '1' '0');
        }

        
dvz_shoutbox.runCallbacks('toggle', { statusstatus });

    }, 

So kann die Shoutbox nur noch auf, aber nicht mehr zugeklappt werden.
Das ist notwendig, solange der Cookie gespeichert bleibt,
damit die Leute die sie zugeklappt haben wieder aufklappen können.

Bei deiner simplen Änderung, Gerti, stehen diese Leute,
die sie vorher zugeklappt haben vor verschlossener Tür.^^

Was ich gerne hätte ist, dass aufgehört wird den Cookie abzufragen,
aber keine Ahnung ob das geht...
Zitieren
#25
Ich habe mir die Shoutbox jetzt mal lokal installiert und etwas geforscht. Wink

Mach mal bitte alle Ändeungen in der js-Datei rückgängig und passe Folgendes in der "inc/plugins/dvz_shoutbox.php" Datei an:

Ersetze (Zeile #792):
PHP-Code:
$status =
 (!isset(
$mybb->cookies['dvz_sb_status']) && $mybb->settings['dvz_sb_status'] == 1) ||
 
$mybb->cookies['dvz_sb_status'] == '1'


durch:
PHP-Code:
$status true

Danach kann man die Box zwar noch zu- /aufklappen....bei Neuladen der Seite ist sie aber immer offen.
Zitieren
#26
(11.05.2021, 12:11)skrilaxrev schrieb: Die User um was bitten... Scherzkekse. Toungue

Ich komme nochmal auf Deine Anmerkung zurück.
Vllt kann ja jemand meine Idee etwas unterstützen, da ich bei Cokkies ein paar Wissenslücken habe.
Es wäre doch durchaus möglich beim User zu prüfen, ob der Cookie existiert und ihn dann zu löschen.
Somit ist doch die Option von SvePu praktikabel.

ZB.:
PHP-Code:
$cookie_name "dvz_sb_status";

if(isset(
$_COOKIE[$cookie_name])) {
setcookie($cookie_namestatus '1' '0'time() - 3600);


Edit: Beitrag hat sich eben mit SvePu überschnitten.
Zitieren
#27
@Schnapsnase: Alles gut, das vorhin war nur ein Spaß, weil meine User etwas komisch sind. Big Grin Die Cookies anzugehen, ist durchaus richtig.

@SvePu: Ja, das ist genau das was ich gesucht habe.

Allerdings habe ich den Rest nicht rückgängig gemacht, sondern die Kombination mit folgendem Code bestehen gelassen, da ich ja nicht möchte, dass die Shoutbox noch auf oder zugeklappt werden kann.

Nochmal zum mitschreiben für eventuell Interessierte oder Hilfesuchende, sieht die Funktion in jscripts/dvz_shoutbox.js statt so...

PHP-Code:
// functionality
    
toggle: function(statusremember) {

        if (
status == true) {

            
dvz_shoutbox.status true;

            $(
'#shoutbox').removeClass('collapsed');
            $(
'#shoutbox .body').fadeIn();

            if (
dvz_shoutbox.frozen || !dvz_shoutbox.started) {
                
dvz_shoutbox.frozen false;
                
dvz_shoutbox.loop();
            }

        } else {

            
dvz_shoutbox.status false;

            $(
'#shoutbox .body').stop(1).fadeOut(function() {
                if (
dvz_shoutbox.status == false) $('#shoutbox').stop(1).addClass('collapsed');
            });

        }

        if (
remember !== false) {
            
Cookie.set('dvz_sb_status'status '1' '0');
        }

        
dvz_shoutbox.runCallbacks('toggle', { statusstatus });

    }, 

...daher so aus:

PHP-Code:
// functionality
   
toggle: function(statusremember) {
        
        if (
status == false) {
            return;
            }

        if (
status == true) {

            
dvz_shoutbox.status true;

            $(
'#shoutbox').removeClass('collapsed');
            $(
'#shoutbox .body').fadeIn();

            if (
dvz_shoutbox.frozen || !dvz_shoutbox.started) {
                
dvz_shoutbox.frozen false;
                
dvz_shoutbox.loop();
            }
        }

        if (
remember !== false) {
            
Cookie.set('dvz_sb_status'status '1' '0');
        }

        
dvz_shoutbox.runCallbacks('toggle', { statusstatus });

    }, 

Kombiniert mit dem Code von SvePu...

(11.05.2021, 13:45)SvePu schrieb: Ich habe mir die Shoutbox jetzt mal lokal installiert und etwas geforscht. Wink

Mach mal bitte alle Ändeungen in der js-Datei rückgängig und passe Folgendes in der "inc/plugins/dvz_shoutbox.php" Datei an:

Ersetze (Zeile #792):
PHP-Code:
$status =
 (!isset(
$mybb->cookies['dvz_sb_status']) && $mybb->settings['dvz_sb_status'] == 1) ||
 
$mybb->cookies['dvz_sb_status'] == '1'


durch:
PHP-Code:
$status true

Danach kann man die Box zwar noch zu- /aufklappen....bei Neuladen der Seite ist sie aber immer offen.

...hat das folgendes Ergebnis:

1. Die Shoutbox kann nicht mehr zu oder aufgeklappt werden.
2. Wurde sie vor Änderung des Codes zugeklappt, wird sie nun beim Neuladen der Seite automatisch aufgeklappt.

Perfekt! - Vielen Dank für eure Hilfe!
Zitieren


Möglicherweise verwandte Themen…
Thema Verfasser Antworten Ansichten Letzter Beitrag
  DVZ Shoutbox im Header Exodus 0 291 02.03.2020, 09:50
Letzter Beitrag: Exodus
  [geteilt] DVZ Shoutbox Bodoboo 3 981 31.07.2015, 13:09
Letzter Beitrag: SvePu
Question DVZ Shoutbox Mod frage? Mario4774 3 1.785 29.10.2013, 00:24
Letzter Beitrag: MrBrechreiz