From f1418ebe7d3e01665368ab1bec9734376f7643bd Mon Sep 17 00:00:00 2001 From: Garvin Hicking Date: Wed, 5 Mar 2014 15:40:47 +0100 Subject: [PATCH] make updertEntry not loose category associations --- serendipity_event_freetag/ChangeLog | 4 ++++ serendipity_event_freetag/serendipity_event_freetag.php | 8 +++++++- serendipity_event_trackback/ChangeLog | 3 +++ .../serendipity_event_trackback.php | 9 ++++++++- 4 files changed, 22 insertions(+), 2 deletions(-) diff --git a/serendipity_event_freetag/ChangeLog b/serendipity_event_freetag/ChangeLog index 121ba38fe..7e8c0c5db 100644 --- a/serendipity_event_freetag/ChangeLog +++ b/serendipity_event_freetag/ChangeLog @@ -1,3 +1,7 @@ +3.47: +----- +Make updertEntry not loose possible category associations + 3.46: ----- diff --git a/serendipity_event_freetag/serendipity_event_freetag.php b/serendipity_event_freetag/serendipity_event_freetag.php index 8e6366985..19bcb65c5 100644 --- a/serendipity_event_freetag/serendipity_event_freetag.php +++ b/serendipity_event_freetag/serendipity_event_freetag.php @@ -72,7 +72,7 @@ function introspect(&$propbag) 'smarty' => '2.6.7', 'php' => '4.1.0' )); - $propbag->add('version', '3.46'); + $propbag->add('version', '3.47'); $propbag->add('event_hooks', array( 'frontend_fetchentries' => true, 'frontend_fetchentry' => true, @@ -1715,6 +1715,12 @@ function displayManageTags($event, &$bag, &$eventData, $addData) { unset($entry['email']); printf('%d - "%s"
', $entry['id'], htmlspecialchars($entry['title'])); $serendipity['POST']['properties']['fake'] = 'fake'; + $current_cat = $entry['categories']; + $entry['categories'] = array(); + foreach($current_cat AS $categoryidx => $category_data) { + $entry['categories'][$category_data['categoryid']] = $category_data['categoryid']; + } + $up = serendipity_updertEntry($entry); if (is_string($up)) { echo "
$up
\n"; diff --git a/serendipity_event_trackback/ChangeLog b/serendipity_event_trackback/ChangeLog index a68797119..ae53d7600 100644 --- a/serendipity_event_trackback/ChangeLog +++ b/serendipity_event_trackback/ChangeLog @@ -1,3 +1,6 @@ +1.16: + * Fixed error when saving an entry, which would loose its category association + 1.15: * Fixed foreach warning in some cases diff --git a/serendipity_event_trackback/serendipity_event_trackback.php b/serendipity_event_trackback/serendipity_event_trackback.php index b00eb3a84..a61b976b8 100644 --- a/serendipity_event_trackback/serendipity_event_trackback.php +++ b/serendipity_event_trackback/serendipity_event_trackback.php @@ -26,7 +26,7 @@ function introspect(&$propbag) $propbag->add('description', PLUGIN_EVENT_MTRACKBACK_TITLEDESC); $propbag->add('stackable', false); $propbag->add('author', 'Garvin Hicking, Malte Paskuda'); - $propbag->add('version', '1.15'); + $propbag->add('version', '1.16'); $propbag->add('requirements', array( 'serendipity' => '0.8', 'smarty' => '2.6.7', @@ -286,6 +286,13 @@ function generateDelayed() { unset($stored_entry['email']); } + # Convert fetched categories to storable categories. + $current_cat = $stored_entry['categories']; + $stored_entry['categories'] = array(); + foreach($current_cat AS $categoryidx => $category_data) { + $stored_entry['categories'][$category_data['categoryid']] = $category_data['categoryid']; + } + ob_start(); serendipity_updertEntry($stored_entry); ob_end_clean();