]> git.mxchange.org Git - friendica.git/commitdiff
don't update an event that hasn't changed.
authorFriendika <info@friendika.com>
Fri, 24 Jun 2011 01:25:33 +0000 (18:25 -0700)
committerFriendika <info@friendika.com>
Fri, 24 Jun 2011 01:25:33 +0000 (18:25 -0700)
include/event.php
include/items.php
mod/dfrn_notify.php

index 8078a9a5ed1ea3ad76e1b7b9d50366f7c0f1b0d3..f79266e33c8402ebc9aa9e7d62e85797d2dbd9ce 100644 (file)
@@ -213,6 +213,22 @@ function event_store($arr) {
 
 
        if($arr['id']) {
+
+               // has the event actually changed?
+
+               $r = q("SELECT * FROM `event` WHERE `id` = %d AND `uid` = %d LIMIT 1",
+                       intval($arr['id']),
+                       intval($arr['uid'])
+               );
+               if((! count($r)) || ($r[0]['edited'] === $arr['edited'])) {
+                       $r = q("SELECT * FROM `item` WHERE `event-id` = %d AND `uid` = %d LIMIT 1",
+                               intval($arr['id']),
+                               intval($arr['uid'])
+                       );
+                       return((count($r)) ? $r[0]['id'] : 0);
+               }
+
+
                $r = q("UPDATE `event` SET
                        `edited` = '%s',
                        `start` = '%s',
index 2a934af3ac7b0958f733df4dded402d3449430cf..47a38d5e502590c7d07258e0ff3cb1cabd6e7796 100644 (file)
@@ -1347,6 +1347,7 @@ function consume_feed($xml,$importer,&$contact, &$hub, $datedir = 0, $secure_fee
                                        if(x($ev,'desc') && x($ev,'start')) {
                                                $ev['uid'] = $importer['uid'];
                                                $ev['uri'] = $item_id;
+                                               $ev['edited'] = $datarray['edited'];
 
                                                if(is_array($contact))
                                                        $ev['cid'] = $contact['id'];
index f6d1f2be57c4e42fbc73b9a19e289f5498345714..dd0172243589c249c1bad2cd0e93710bb09ee558 100644 (file)
@@ -676,6 +676,7 @@ function dfrn_notify_post(&$a) {
                                        $ev['cid'] = $importer['id'];
                                        $ev['uid'] = $importer['uid'];
                                        $ev['uri'] = $item_id;
+                                       $ev['edited'] = $datarray['edited'];
 
                                        $r = q("SELECT * FROM `event` WHERE `uri` = '%s' AND `uid` = %d LIMIT 1",
                                                dbesc($item_id),