Update of /cvsroot/php-blog/serendipity/include
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv22766/include
Modified Files:
plugin_api.inc.php
Log Message:
common method to access cached or non-cached $entries eventData
Index: plugin_api.inc.php
===================================================================
RCS file: /cvsroot/php-blog/serendipity/include/plugin_api.inc.php,v
retrieving revision 1.19
retrieving revision 1.20
diff -u -d -r1.19 -r1.20
--- plugin_api.inc.php 29 Jan 2005 11:52:10 -0000 1.19
+++ plugin_api.inc.php 9 Feb 2005 15:09:12 -0000 1.20
@@ -770,6 +770,37 @@
$this->instance = $instance;
}
+ function &getFieldReference($fieldname = 'body', &$eventData) {
+ // Get a reference to a content field (body/extended) of
+ // $entries input data. This is a unifying function because
+ // several plugins are using similar fields.
+
+ if (is_array($eventData) && isset($eventData[0]) && is_array($eventData[0]['properties'])) {
+ if (!empty($eventData[0]['properties']['ep_cache_' . $fieldname])) {
+
+ // It may happen that there is no extended entry to concatenate to. In that case,
+ // create a dummy extended entry.
+ if (!isset($eventData[0]['properties']['ep_cache_' . $fieldname])) {
+ $eventData[0]['properties']['ep_cache_' . $fieldname] = '';
+ }
+
+ $key = &$eventData[0]['properties']['ep_cache_' . $fieldname];
+ } else {
+ $key = &$eventData[0][$fieldname];
+ }
+ } elseif (is_array($eventData) && is_array($eventData['properties'])) {
+ if (!empty($eventData['properties']['ep_cache_' . $fieldname])) {
+ $key = &$eventData['properties']['ep_cache_' . $fieldname];
+ } else {
+ $key = &$eventData['properties'][$fieldname];
+ }
+ } else {
+ $key = '';
+ }
+
+ return $key;
+ }
+
function event_hook($event, &$bag, &$eventData, $addData = null) {
// Define event hooks here, if you want you plugin to execute those instead of being a sidebar item.
// Look at external plugins 'serendipity_event_mailer' or 'serendipity_event_weblogping' for usage.
|