[phpBB Debug] PHP Warning: in file [ROOT]/ext/tas2580/seourls/event/listener.php on line 213: Undefined array key "FORUM_NAME"
Slice Status aka Slice On/Off - Seite 1 - REDAXO Forum
Hallo,

Wir haben in letzter Zeit festgestellt, dass die Kommunikation via Slack viel schneller und zielführender ist als ein Beitrag im Forum. Aufgrund der neuen und besseren Möglichkeiten der Kommunikation haben wir uns entschlossen das Forum nur noch als Archiv zur Verfügung zu stellen. Somit bleibt es weiterhin möglich hier nach Lösungen zu suchen. Neue Beiträge können nicht mehr erstellt werden.

Wir empfehlen, für deine Fragen/Probleme Slack zu nutzen. Dort sind viele kompetente Benutzer aktiv und beantworten jegliche Fragen, gerne auch von REDAXO-Anfängern! Slack wird von uns sehr intensiv und meistens "rund um die Uhr" benutzt :-)
Selbst einladen kannst Du dich hier: https://redaxo.org/slack/
Benutzeravatar
RexDude
Beiträge: 2543
Registriert: 22. Apr 2010, 11:24

Re: [v1.2.0] Neues (altes) Addon: Slice Status aka Slice On/

26. Nov 2012, 13:13

jdlx hat geschrieben:Evtl. nicht beim install (oder zumindest nicht ungefragt), aber ein replace wäre imho sinnvoller als irgendwelcher compat code -> issisch bloat..
ja, hast recht. vielleicht so: wenn slice_onoff da ist dann autom. die die werte ins neue slice_status format kopieren, so dass die bestehenden artikelstati für slice_status erhalten bleiben. so zieht man dem slice_onoff die daten zumindest nicht unter dem arsch weg ;)

Benutzeravatar
ds
Admin
Beiträge: 247
Registriert: 10. Okt 2006, 22:58
Wohnort: Berlin
Kontaktdaten: Website

Re: [v1.2.0] Neues (altes) Addon: Slice Status aka Slice On/

26. Nov 2012, 14:10

RexDude hat geschrieben:vielleicht so: wenn slice_onoff da ist dann autom. die die werte ins neue slice_status format kopieren, so dass die bestehenden artikelstati für slice_status erhalten bleiben.
Yay, das wäre perfekt!


Benutzeravatar
RexDude
Beiträge: 2543
Registriert: 22. Apr 2010, 11:24

Re: [v1.2.0] Neues (altes) Addon: Slice Status aka Slice On/

27. Nov 2012, 10:57

Hey, ich frage mich gerade ob ich dem Addon auch ne eigene Seite im Backend spendieren soll als nächstes. Es ist zwar momentan nur ein Parameter den man einstellen kann (AJAX on/off) aber vielleicht ist es schon mal ganz net wenn das Addon auch im Addon Menü auftaucht. Was meint ihr?

Benutzeravatar
ds
Admin
Beiträge: 247
Registriert: 10. Okt 2006, 22:58
Wohnort: Berlin
Kontaktdaten: Website

Re: [v1.2.0] Neues (altes) Addon: Slice Status aka Slice On/

27. Nov 2012, 11:09

RexDude hat geschrieben:Hey, ich frage mich gerade ob ich dem Addon auch ne eigene Seite im Backend spendieren soll als nächstes. Es ist zwar momentan nur ein Parameter den man einstellen kann (AJAX on/off) aber vielleicht ist es schon mal ganz net wenn das Addon auch im Addon Menü auftaucht. Was meint ihr?
Nur meine Meinung, weil du danach gefragt hast: Ich würde AJAX immer verwenden (gar nicht konfigurierbar machen) und im Sinne von KISS keine Backend-Seite einrichten.

Aber hey: Es ist dein Addon, und jede Form von Entwicklung für die Community ist eine gute Tat :)

Benutzeravatar
RexDude
Beiträge: 2543
Registriert: 22. Apr 2010, 11:24

Re: [v1.2.0] Neues (altes) Addon: Slice Status aka Slice On/

27. Nov 2012, 14:04

Ich steh auch auf KISS bin aber auch ein Freund von möglichst hoher Konfigurierbarkeit, so dass ich die Dinge meinen Wünschen anpassen kann ohne gross im Code herumwühlen zu müssen.

Neu in Version 1.2.1:
* Automatischer Import von slice_onoff Daten bei Installation

Download:
https://github.com/RexDude/slice_status/downloads

Update Hinweis:
https://github.com/RexDude/slice_status ... ice_status

@Dirk: läufts?

Benutzeravatar
RexDude
Beiträge: 2543
Registriert: 22. Apr 2010, 11:24

Re: [v1.2.2] Slice Status aka Slice On/Off

20. Dez 2012, 13:45

Neu in Version 1.2.2:

* Import-Meldung wird nun auch unter Redaxo 4.3 angezeigt
* Autom. Cache löschen bei Install/Deinstall

Download ab jetzt immer hier:
http://www.redaxo.org/de/download/addons/?addon_id=1022

...da der Download-Bereich unter GitHub gekickt wurde.

Benutzeravatar
ds
Admin
Beiträge: 247
Registriert: 10. Okt 2006, 22:58
Wohnort: Berlin
Kontaktdaten: Website

Re: [v1.2.2] Slice Status aka Slice On/Off

20. Dez 2012, 23:33

Jetzt bin ich auch endlich dazu gekommen, es einzusetzen. Funktioniert großartig. Hat problemlos die Daten vom vorherigen Slice_OnOff übernommen.

Danke!

Rex_Fan
Beiträge: 172
Registriert: 6. Apr 2010, 14:40

Re: [v1.2.2] Slice Status aka Slice On/Off

8. Jan 2013, 09:50

Hallo,
habe mir das aktuelle addon installiert, leider tut sich bei mir bei Klick auf den On/off Button nichts.
Hier die Fehlermeldung aus Chrome:

Code: Alles auswählen

GET http://localhost/redaxo/index.php?function=updateslicestatus&new_status=0&slice_id=48&article_id=9&clang=0 404 (Not Found) jquery.min.js:130
c.extend.ajax jquery.min.js:130
updateSliceStatus slice_status.js:52
(anonymous function) /webseite/redaxo/index.php?page=content&article_id=9&mode=edit&clang=0&a256_article_name=reside (1):1 

Benutzeravatar
RexDude
Beiträge: 2543
Registriert: 22. Apr 2010, 11:24

Re: [v1.2.2] Slice Status aka Slice On/Off

8. Jan 2013, 11:23

Hi und vielen Dank für die Bugmeldung!

So wie es aussieht habe ich bei dem Ajax-Call nicht bedacht, dass man Redaxo ja auch in einem Unterordner laufen lassen kann.

Wenn du Bock hast tausch doch mal die Zeile 54 aus /webseite/files/addons/slice_status/slice_status.js:

Code: Alles auswählen

url: '/redaxo/index.php?function=updateslicestatus&new_status=' + newStatus + '&slice_id=' + sliceID + '&article_id=' + articleID + '&clang=' + cLang + '',
mit dieser hier aus:

Code: Alles auswählen

url: window.location.pathname + '?function=updateslicestatus&new_status=' + newStatus + '&slice_id=' + sliceID + '&article_id=' + articleID + '&clang=' + cLang + '',
Gehts dann bei dir?

Rex_Fan
Beiträge: 172
Registriert: 6. Apr 2010, 14:40

Re: [v1.2.2] Slice Status aka Slice On/Off

8. Jan 2013, 11:37

gleich getestet - damit klappts wie eh und je :)

Tolles Addon - toller support!

Benutzeravatar
RexDude
Beiträge: 2543
Registriert: 22. Apr 2010, 11:24

Re: [v1.2.2] Slice Status aka Slice On/Off

8. Jan 2013, 11:47

Freut mich! Und wieder ist das Addon ein Stück "reifer" geworden. Ich werde in GitHub ein Issue anlegen mit dem Bug und bei der nächsten Version ist dieser dann bereinigt.

Tizian
Beiträge: 151
Registriert: 4. Apr 2008, 11:58
Wohnort: Bremen
Kontaktdaten: Website

Re: [v1.2.2] Slice Status aka Slice On/Off

12. Feb 2013, 10:39

hallo dude,
danke für das add-on.

gibt es eine möglichkeit, den on/off-status aus dem modul heraus anzusprechen?
oder ist die implementierung der timer-funktion schon weiter fortgeschritten?

danke und
schöne grüße
tizian
********************************
ansichtsache TM

Benutzeravatar
RexDude
Beiträge: 2543
Registriert: 22. Apr 2010, 11:24

Re: [v1.2.2] Slice Status aka Slice On/Off

12. Feb 2013, 10:52

hey dude,

ja geht:

per js/ajax:

Code: Alles auswählen

updateSliceStatus(articleID, cLang, sliceID, curStatus) 
mit curStatus wird der funktion der aktuelle status mitgegeben. in der funktion wird dann geswitcht.

per php:

Code: Alles auswählen

rex_slice_status::updateSliceStatusInDB($articleID, $cLang, $sliceID, $newStatus); 
$newStatus: hier wird dann wohl irgendwie schon der neue status mit angegeben :)

viel spaß bei switchen :)

der rexdude

Tizian
Beiträge: 151
Registriert: 4. Apr 2008, 11:58
Wohnort: Bremen
Kontaktdaten: Website

Re: [v1.2.2] Slice Status aka Slice On/Off

12. Feb 2013, 14:24

damn, dude, thx,

so i had to give it a try… but stuck.

versuche es in dieses modul einzubauen:

Code: Alles auswählen

<?php 
$articleID = '';
$articleID = REX_ARTICLE_ID;

$sliceID = '';
$sliceID = REX_SLICE_ID;

$text = '';
    $text = htmlspecialchars_decode("REX_VALUE[1]");
    $text = str_replace("<br />","",$text);
    $text = rex_a79_textile($text);
    $text = str_replace("###","&#x20;",$text);
//	Wenn Bild eingefuegt wurde, Code schreiben 
$file = "";
if ("REX_FILE[1]" != "") {
$file = '<img class="image" src="index.php?rex_resize=220w__'."REX_FILE[1]".'" alt="'.$title.'" />';
}

$jahr_von = 'REX_VALUE[5]';
$monat_von = 'REX_VALUE[6]';
$tag_von = 'REX_VALUE[7]';

$jahr_bis = 'REX_VALUE[8]';
$monat_bis = 'REX_VALUE[9]';
$tag_bis = 'REX_VALUE[10]';

if ( $jahr_von != ''
     && $monat_von != ''
     && $tag_von != ''
     && $jahr_bis != ''
     && $monat_bis != ''
     && $tag_bis != '') {
  $von = mktime( 0, 0, 0, $monat_von, $tag_von, $jahr_von);
  $bis  = mktime( 0, 0, 0, $monat_bis, $tag_bis, $jahr_bis);
  $jetzt = time();

if( $jetzt > $von && $jetzt < $bis) {
    // hier machen was immer du willst, wenn der Artikel im Bereich von VON und BIS ist
echo $file;
echo chr(10);
echo $text;
  } 
else {
    // hier machen was immer du willst, wenn der Artikel NICHT im Bereich von VON und BIS ist

rex_slice_status::updateSliceStatusInDB($articleID, $cLang, $sliceID, $newStatus);

  }

  if ($REX['REDAXO']) {
    if( $jetzt > $von && $jetzt < $bis) {
      $state = '<span style="color: #00aa00;">online</color>';
    } else {
      $state = '<span style="color: #aa0000;">offline</color>';
    }
    echo 'Artikel aufgrund der Datumseinstellungen '.$state; 
    echo 'Artikel ID:'.$articleID; //Test
    echo 'Slice ID:'.$sliceID;  //Test
  }
} 
?>
muss das ganze über eine aktion angetriggert werden?
danke und
schöne grüße
tizian
********************************
ansichtsache TM

Benutzeravatar
RexDude
Beiträge: 2543
Registriert: 22. Apr 2010, 11:24

Re: [v1.2.2] Slice Status aka Slice On/Off

12. Feb 2013, 14:57

dude, nette variablen namen: $von, $bis ;)

Code: Alles auswählen

rex_slice_status::updateSliceStatusInDB($articleID, $cLang, $sliceID, $newStatus); 
hier fällt halt schon mal auf das $clang und $newStatus gar net vor dem Funktionsaufruf gesetzt werden (hab zumindest in dem codeschnipsel nix entdeckt). Also bevor du die Funktion aufrufst setzte die Parameter für entspr. Variablen und gib die auch mal mit nem echo alle vorher aus, damit du siehst dass alles passt was du da an die Funktion übergibst ;)

Tizian
Beiträge: 151
Registriert: 4. Apr 2008, 11:58
Wohnort: Bremen
Kontaktdaten: Website

Re: [v1.2.2] Slice Status aka Slice On/Off

12. Feb 2013, 15:05

hier fällt halt schon mal auf das $clang und $newStatus gar net vor dem Funktionsaufruf gesetzt werden
…nee, schon klar. ich stehe nur mit dem funktionsaufruf auf dem schauch – wie rufe ich die auf? und wo? und wie?

danke im voraus…
schöne grüße
tizian
********************************
ansichtsache TM

Benutzeravatar
RexDude
Beiträge: 2543
Registriert: 22. Apr 2010, 11:24

Re: [v1.2.2] Slice Status aka Slice On/Off

12. Feb 2013, 15:14

du rufst das baby da auf wo es das slice online/offline setzen soll. ich empfehl dir mal nen nackten funktion aufruf, d.h. in deiner modul ausgabe ganz oben

rex_slice_status::updateSliceStatusInDB(1, 1, 1, 0);

sollte den ersten slice des ersten artikels der sprache 1 auf off stellen. zum testen.

Tizian
Beiträge: 151
Registriert: 4. Apr 2008, 11:58
Wohnort: Bremen
Kontaktdaten: Website

Re: [v1.2.2] Slice Status aka Slice On/Off

13. Feb 2013, 09:18

danke!

leider geht es nur unzureichend hiermit:
<?php

$articleID = '';
$articleID = REX_ARTICLE_ID;

$sliceID = '';
$sliceID = REX_SLICE_ID;

$text = '';
$text = htmlspecialchars_decode("REX_VALUE[1]");
$text = str_replace("<br />","",$text);
$text = rex_a79_textile($text);
$text = str_replace("###","&#x20;",$text);

// Wenn Bild eingefuegt wurde, Code schreiben
$file = "";
if ("REX_FILE[1]" != "") {
$file = '<img class="image" src="index.php?rex_resize=220w__'."REX_FILE[1]".'" alt="'.$title.'" />';
}

$jahr_von = 'REX_VALUE[5]';
$monat_von = 'REX_VALUE[6]';
$tag_von = 'REX_VALUE[7]';

$jahr_bis = 'REX_VALUE[8]';
$monat_bis = 'REX_VALUE[9]';
$tag_bis = 'REX_VALUE[10]';

if ( $jahr_von != ''
&& $monat_von != ''
&& $tag_von != ''
&& $jahr_bis != ''
&& $monat_bis != ''
&& $tag_bis != '') {
$von = mktime( 0, 0, 0, $monat_von, $tag_von, $jahr_von);
$bis = mktime( 0, 0, 0, $monat_bis, $tag_bis, $jahr_bis);
$jetzt = time();
if( $jetzt > $von && $jetzt < $bis) {
// hier machen was immer du willst, wenn der Artikel im Bereich von VON und BIS ist
rex_slice_status::updateSliceStatusInDB($articleID, 1, $sliceID, 1);
echo $file;
echo chr(10);
echo $text;
} else {
// hier machen was immer du willst, wenn der Artikel NICHT im Bereich von VON und BIS ist
rex_slice_status::updateSliceStatusInDB($articleID, 1, $sliceID, 0);
}
if ($REX['REDAXO']) {
if( $jetzt > $von && $jetzt < $bis) {
$state = '<span style="color: #00aa00;">online</color>';
} else {
$state = '<span style="color: #aa0000;">offline</color>';
}
echo 'Artikel aufgrund der Datumseinstellungen '.$state;
echo '<br />Artikel ID:'.$articleID;
echo '<br />Slice ID:'.$sliceID;
}
}
?>
beim einstellen im backend geht es, im frontend wird bei einem datums-/statuswechsel jedoch folgende fehlermeldung angezeigt:
Fatal error: Call to undefined function rex_deleteCacheArticleContent() in /Applications/MAMP/kita/redaxo/include/addons/slice_status/classes/class.rex_slice_status.inc.php on line 85

auch im backend war einmal cache löschen notwendig, bzw. das erneute aufrufen der artikelseite/des slice.
eine idee?

danke
schöne grüße
tizian
********************************
ansichtsache TM

Benutzeravatar
RexDude
Beiträge: 2543
Registriert: 22. Apr 2010, 11:24

Re: [v1.2.2] Slice Status aka Slice On/Off

13. Feb 2013, 22:53

Hi,

es sieht so aus als ob das Frontend die rex_deleteCacheArticleContent() nicht kennt. Deshalb musst du den rex_slice_status::updateSliceStatusInDB in eine If-Abfrage fürs Backend packen.

Code: Alles auswählen

if ($REX['REDAXO']) {
rex_slice_status::updateSliceStatusInDB($articleID, 1, $sliceID, 0);
}
Dann sollte kein Fehler mehr kommen.

>> auch im backend war einmal cache löschen notwendig, bzw. das erneute aufrufen der artikelseite/des slice.

Ja weil beim erneuten Aufrufen der Artikel neu geschrieben wird, der zuvor gelöscht wurde. Man kann ihn natürlich auch neu generieren lassen anstelle nur löschen. Aber du musst ja so oder so neu auf die Seite gehen um dir das Ergebniss anzeiugen zu lassen. Wenn du aber im Backend meinst, dass du gleich das Ergebnis haben willst nach Block speichern, so würde das fast nur mit Ajax gehen denke ich. Also Klick auf "Speichern", Ajax Call, Seite läd neu, Slice wird dann bereits offline angezeigt.

Benutzeravatar
RexDude
Beiträge: 2543
Registriert: 22. Apr 2010, 11:24

Re: [v1.2.5] Slice Status aka Slice On/Off

17. Feb 2013, 17:59

Neue Version 1.2.5:
-$REX['MEDIA_ADDON_DIR'] wird genutzt wenn vorhanden
-Changelog hinzugefügt
-Dateirechte korrekt eingestellt
-PHP-Funktion updateSliceStatusInDB in updateSliceStatus geändert
-Fixed #8: Slice Status gibt nun Fehlermeldung aus wenn status DB-Feld nicht gefunden
-Fixed #7: Ajax Mode läuft jetzt auch wenn REDAXO in einem Unterordner installiert wurde
-Funktionen in statische Klasse rex_slice_status verschoben

Coming soon:
-Einstellungsseite im Backend

@Tizian: Bitte beachte, dass ich in dieser Version updateSliceStatusInDB in updateSliceStatus geändert hab

Benutzeravatar
ds
Admin
Beiträge: 247
Registriert: 10. Okt 2006, 22:58
Wohnort: Berlin
Kontaktdaten: Website

Re: [v1.2.5] Slice Status aka Slice On/Off

17. Feb 2013, 22:10

RexDude hat geschrieben:Neue Version 1.2.5: …
Chapeau mal wieder!

Benutzeravatar
RexDude
Beiträge: 2543
Registriert: 22. Apr 2010, 11:24

Re: [v1.2.5] Slice Status aka Slice On/Off

17. Feb 2013, 22:30

ds hat geschrieben:Chapeau mal wieder!
Gracias :)

Und Danke auch allen, die Bugs gemeldet haben :)

Tizian
Beiträge: 151
Registriert: 4. Apr 2008, 11:58
Wohnort: Bremen
Kontaktdaten: Website

Re: [v1.2.5] Slice Status aka Slice On/Off

19. Feb 2013, 09:25

danke dude,

leider funktioniert die zeitgesteuerte schaltung bis jetzt nur vom backend aus.

wird der status offline für ein datum in der zukunft eingestellt – und dieses datum dann erreicht – wird der status leider nicht übernommen, wenn der artikel im frontend aufgerufen wird…

im backend wird der status im modul zwar richtig angezeigt –

Code: Alles auswählen

$state = '<span style="color: #00aa00;">online</color>';
} else {
$state = '<span style="color: #aa0000;">offline</color>';
}
echo 'Artikel aufgrund der Datumseinstellungen '.$state; 

der status vom addon dann aber auch erst nach aufruf des slice umgeschaltet.
schöne grüße
tizian
********************************
ansichtsache TM

Benutzeravatar
RexDude
Beiträge: 2543
Registriert: 22. Apr 2010, 11:24

Re: [v1.2.5] Slice Status aka Slice On/Off

19. Feb 2013, 09:50

hey dude,
wird der status leider nicht übernommen, wenn der artikel im frontend aufgerufen wird…
naja, kein wunder wenn du hier dann sowas machen musst:

Code: Alles auswählen

if ($REX['RADAXO']) { rex_slice_status::updateSliceStatus(...); }
:P

Wenn du es schaffst, dass die Funktion "rex_deleteCacheArticleContent" auch im Frontend verfügbar wird, dann müsste es eigentlich gehen. Evtl. kannst du versuchen mal ganz blauäugig die "function_rex_generate.inc.php" ausm REDAXO-Core im Frontend zu includen (Abfrage von oben dann wieder raus.).

Code: Alles auswählen

include_once($REX['INCLUDE_PATH'] . '/functions/function_rex_generate.inc.php'); 
Wenn das funzt bau ichs im Addon direkt ein :)

Zurück zu „Allgemeines [R4]“