Page 1 of 1

$entry.is_extended ist immer true - Warum?

Posted: Fri Feb 25, 2011 9:37 pm
by Mr. Foo
Hi,

habe eben ein paar Plugins geupdatet und jetzt ist die Variable $entry.is_extended immer true.

Ich habe mir mal die include/functions_entries.inc.php angeschaut, dort wird $entry['is_extended'] = true; gesetzt.

Ich glaube das liegt am Parameter $preview wenn das gesetzt wird wird der Beitrag "extended":

Code: Select all


 *
 * @see serendipity_fetchEntries()
 * @see serendipity_searchEntries()
 * @access public
 * @param   array       The array of entries with all of its data
 * @param   boolean     Toggle whether the extended portion of an entry is requested (via $serendipity['GET']['id'] single entry view)
 * @param   boolean     Indicates if this is a preview
 * @param   string      The name of the SMARTY block that this gets parsed into
 * @param   boolean     Indicates whether the assigned smarty variables should be parsed
 * @param   boolean     Indicates whether to apply footer/header event hooks
 * @param   boolean     Indicates whether the pagination footer should be displayed
 * @param   mixed       Indicates whether the input $entries array is already grouped in preparation for the smarty $entries output array [TRUE], or if it shall be grouped by date [FALSE] or if a plugin hook shall be executed to modify data ['plugin']. This setting can also be superseded by a 'entry_display' hook.
 * @return
 */
function serendipity_printEntries($entries, $extended = 0, $preview = false, $smarty_block = 'ENTRIES', $smarty_fetch = true, $use_hooks = true, $use_footer = true, $use_grouped_array = false) {

/*.... Code ... */
            if (isset($entry['exflag']) && $entry['exflag'] && ($extended || $preview)) {
                $entry['is_extended']       = true;
            }
Das ist komisch - weiss einer an was das liegt?

Re: $entry.is_extended ist immer true - Warum?

Posted: Sat Feb 26, 2011 9:03 am
by Timbalu
Sehr merkwürdig. Hängt ja wohl mit den Updates der Plugins zusammen.
Welche waren das? Vielleicht hast du nun neue Plugins und ein altes Serendipity?

Edit: Blind shot[ Ich würde, falls alles neu ist, serendipity_fetchEntries ... und {frontend_fetchentries ...} Aufrufe in allen php oder in deinen Template files untersuchen und schauen was dort unter dem zweiten Wert ($extended) übergeben wird (0 oder eine id, true oder false). ]

Die function Doc sagt ja
@param boolean Toggle whether the extended portion of an entry is requested (via $serendipity['GET']['id'] single entry view)

Re: $entry.is_extended ist immer true - Warum?

Posted: Sat Feb 26, 2011 10:46 pm
by Mr. Foo
Stimmt, meine Serendipity-Version ist nicht die aktuellste. Da es für diese Version keine Sicherheitslücke gibt, habe ich bisher ein Update nicht für nötig gehalten.

Plugins waren folgende:
serendipity_plugin_google_adsense
serendipity_event_relatedlinks
serendipity_event_mobile_output
serendipity_event_flattr

Wobei ich jetzt nicht 100%ig weiss ob das alle Waren. Vom Zeitstempel der Ordner im /plugins Ordner ware es aber diese.

Hmm - muss ich also doch die neuste Version benutzen?

Re: $entry.is_extended ist immer true - Warum?

Posted: Sun Feb 27, 2011 10:09 am
by Timbalu
Also ganz generell:
Serendipity upzudaten macht immer Sinn, da im Laufe der Zeit viele kleine Bugs gefixt werden. Programmierung ist ein lebendiger Prozeß und vieles wird erst nach längerer Zeit deutlich.
Serendipity updates sind einfach und recht sicher.
Serendipity regelmäßig upzudaten ist also immer eine Empfehlung!

Ich habe zu deinem Problem mal ganz schnell und oberflächlich durch ein paar der genannten Plugins geschaut und bin auf flattr gestoßen.
http://php-blog.cvs.sourceforge.net/vie ... .9&r2=1.10
Deaktiviere das $eventData['is_extended'] = true; in Zeile 335 experimentellerweise mal mit einem #.
Wenn es das eventuell ist, so müsstest du hier Meldung erstatten, dass entweder das Plugin oder eine andere Stelle hier einen Missmatch verursacht und gefixt werden muß.

Ansonsten nacheinander deaktivieren und prüfen ob der Fehler verschwunden ist, um der Sache näherzukommen. Ein Verdachtskandidat könnte auch noch serendipity_event_relatedlinks sein.

Re: $entry.is_extended ist immer true - Warum?

Posted: Mon Feb 28, 2011 11:27 am
by garvinhicking
Hi!

Wo genau ist $entry.is_extended denn bei dir immer true? Also wo würdest du da etwas anderes erwarten?

Es ist immer dann true wenn man die Detailansicht eines Artikels aufruft oder ein Preview...

Grüße,
Garvin