+ if(strlen($birthday)) {
+ if(substr($birthday,0,4) != $contact['bdyear']) {
+ logger('consume_feed: updating birthday: ' . $birthday);
+
+ /**
+ *
+ * Add new birthday event for this person
+ *
+ * $bdtext is just a readable placeholder in case the event is shared
+ * with others. We will replace it during presentation to our $importer
+ * to contain a sparkle link and perhaps a photo.
+ *
+ */
+
+ $bdtext = t('Birthday:') . ' [url=' . $contact['url'] . ']' . $contact['name'] . '[/url]' ;
+
+
+ $r = q("INSERT INTO `event` (`uid`,`cid`,`created`,`edited`,`start`,`finish`,`desc`,`type`)
+ VALUES ( %d, %d, '%s', '%s', '%s', '%s', '%s', '%s' ) ",
+ intval($contact['uid']),
+ intval($contact['id']),
+ dbesc(datetime_convert()),
+ dbesc(datetime_convert()),
+ dbesc(datetime_convert('UTC','UTC', $birthday)),
+ dbesc(datetime_convert('UTC','UTC', $birthday . ' + 1 day ')),
+ dbesc($bdtext),
+ dbesc('birthday')
+ );
+
+
+ // update bdyear
+
+ q("UPDATE `contact` SET `bdyear` = '%s' WHERE `uid` = %d AND `id` = %d LIMIT 1",
+ dbesc(substr($birthday,0,4)),
+ intval($contact['uid']),
+ intval($contact['id'])
+ );
+
+ // This function is called twice without reloading the contact
+ // Make sure we only create one event. This is why &$contact
+ // is a reference var in this function
+
+ $contact['bdyear'] = substr($birthday,0,4);
+ }
+
+ }
+