aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--boot.php14
-rw-r--r--include/Scrape.php2
-rw-r--r--include/items.php26
-rw-r--r--mod/follow.php5
-rw-r--r--mod/settings.php20
-rw-r--r--view/theme/default/style.css4
-rw-r--r--view/theme/duepuntozero/style.css4
7 files changed, 63 insertions, 12 deletions
diff --git a/boot.php b/boot.php
index 86ad29296..adb1b96f8 100644
--- a/boot.php
+++ b/boot.php
@@ -2215,3 +2215,17 @@ function link_compare($a,$b) {
return true;
return false;
}}
+
+
+if(! function_exists('prepare_body')) {
+function prepare_body($item) {
+
+ require_once('include/bbcode.php');
+
+ $s = smilies(bbcode($item['body']));
+
+ return $s;
+
+
+
+}} \ No newline at end of file
diff --git a/include/Scrape.php b/include/Scrape.php
index 8478ea407..e4f7a0878 100644
--- a/include/Scrape.php
+++ b/include/Scrape.php
@@ -161,6 +161,8 @@ function scrape_feed($url) {
$x = $item->getAttribute('rel');
if(($x === 'alternate') && ($item->getAttribute('type') === 'application/atom+xml'))
$ret['feed_atom'] = $item->getAttribute('href');
+ if(($x === 'alternate') && ($item->getAttribute('type') === 'application/rss+xml'))
+ $ret['feed_rss'] = $item->getAttribute('href');
}
return $ret;
diff --git a/include/items.php b/include/items.php
index 5f8264beb..cbe0e970d 100644
--- a/include/items.php
+++ b/include/items.php
@@ -423,19 +423,29 @@ function get_atom_elements($feed,$item) {
else
$res['private'] = 0;
- $rawcreated = $item->get_item_tags(SIMPLEPIE_NAMESPACE_ATOM_10,'published');
- if($rawcreated)
- $res['created'] = unxmlify($rawcreated[0]['data']);
$rawlocation = $item->get_item_tags(NAMESPACE_DFRN, 'location');
if($rawlocation)
$res['location'] = unxmlify($rawlocation[0]['data']);
+ $rawcreated = $item->get_item_tags(SIMPLEPIE_NAMESPACE_ATOM_10,'published');
+ if($rawcreated)
+ $res['created'] = unxmlify($rawcreated[0]['data']);
+
+
$rawedited = $item->get_item_tags(SIMPLEPIE_NAMESPACE_ATOM_10,'updated');
if($rawedited)
$res['edited'] = unxmlify($rawcreated[0]['data']);
+
+ if(! $res['created'])
+ $res['created'] = $item->get_date();
+
+ if(! $res['edited'])
+ $res['edited'] = $item->get_date();
+
+
$rawowner = $item->get_item_tags(NAMESPACE_DFRN, 'owner');
if($rawowner[0]['child'][SIMPLEPIE_NAMESPACE_ATOM_10]['name'][0]['data'])
$res['owner-name'] = unxmlify($rawowner[0]['child'][SIMPLEPIE_NAMESPACE_ATOM_10]['name'][0]['data']);
@@ -1155,6 +1165,10 @@ function consume_feed($xml,$importer,&$contact, &$hub, $datedir = 0) {
);
$datarray['last-child'] = 1;
}
+ if(($contact['network'] === 'feed') || (! strlen($contact['poll']))) {
+ // one way feed - no remote comment ability
+ $datarray['last-child'] = 0;
+ }
$datarray['parent-uri'] = $parent_uri;
$datarray['uid'] = $importer['uid'];
$datarray['contact-id'] = $contact['id'];
@@ -1207,6 +1221,11 @@ function consume_feed($xml,$importer,&$contact, &$hub, $datedir = 0) {
$datarray['last-child'] = 1;
}
+ if(($contact['network'] === 'feed') || (! strlen($contact['poll']))) {
+ // one way feed - no remote comment ability
+ $datarray['last-child'] = 0;
+ }
+
$datarray['parent-uri'] = $item_id;
$datarray['uid'] = $importer['uid'];
$datarray['contact-id'] = $contact['id'];
@@ -1216,7 +1235,6 @@ function consume_feed($xml,$importer,&$contact, &$hub, $datedir = 0) {
}
}
}
-
}
function new_follower($importer,$contact,$datarray,$item) {
diff --git a/mod/follow.php b/mod/follow.php
index e5eb7763b..bad2e74f9 100644
--- a/mod/follow.php
+++ b/mod/follow.php
@@ -74,8 +74,8 @@ function follow_post(&$a) {
$ret = scrape_feed($url);
- if(count($ret) && $ret['feed_atom']) {
- $poll = $ret['feed_atom'];
+ if(count($ret) && ($ret['feed_atom'] || $ret['feed_rss'])) {
+ $poll = ((x($ret,'feed_atom')) ? $ret['feed_atom'] : $ret['feed_rss']);
$vcard = array();
require_once('simplepie/simplepie.inc');
$feed = new SimplePie();
@@ -115,7 +115,6 @@ function follow_post(&$a) {
logger('follow: poll=' . $poll . ' notify=' . $notify . ' profile=' . $profile . ' vcard=' . print_r($vcard,true));
-
// do we have enough information?
if(! ((x($vcard['fn'])) && ($poll) && ($profile))) {
diff --git a/mod/settings.php b/mod/settings.php
index 1923c58da..32906d86e 100644
--- a/mod/settings.php
+++ b/mod/settings.php
@@ -87,11 +87,14 @@ function settings_post(&$a) {
$err = '';
+ $name_change = false;
+
if($username != $a->user['username']) {
- if(strlen($username) > 40)
- $err .= t(' Please use a shorter name.');
- if(strlen($username) < 3)
- $err .= t(' Name too short.');
+ $name_change = true;
+ if(strlen($username) > 40)
+ $err .= t(' Please use a shorter name.');
+ if(strlen($username) < 3)
+ $err .= t(' Name too short.');
}
if($email != $a->user['email']) {
@@ -165,6 +168,15 @@ function settings_post(&$a) {
intval(local_user())
);
+
+ if($name_change) {
+ q("UPDATE `contact` SET `name` = '%s', `name-date` = '%s' WHERE `uid` = %d AND `self` = 1 LIMIT 1",
+ dbesc($username),
+ dbesc(datetime_convert()),
+ intval(local_user())
+ );
+ }
+
if($old_visibility != $net_publish) {
// Update global directory in background
$php_path = ((strlen($a->config['php_path'])) ? $a->config['php_path'] : 'php');
diff --git a/view/theme/default/style.css b/view/theme/default/style.css
index e34b622c6..fcc9c94a8 100644
--- a/view/theme/default/style.css
+++ b/view/theme/default/style.css
@@ -985,6 +985,10 @@ input#dfrn-url {
width: 450px;
margin-left: 10px;
margin-bottom: 20px;
+ padding: 20px;
+ max-height: 400px;
+ overflow: auto;
+
}
.wall-item-title {
diff --git a/view/theme/duepuntozero/style.css b/view/theme/duepuntozero/style.css
index b00f24cc2..3351b35a1 100644
--- a/view/theme/duepuntozero/style.css
+++ b/view/theme/duepuntozero/style.css
@@ -854,6 +854,9 @@ input#dfrn-url {
width: 450px;
margin-left: 10px;
margin-bottom: 20px;
+ padding: 20px;
+ max-height: 400px;
+ overflow: auto;
}
.wall-item-title {
@@ -1879,4 +1882,3 @@ a.mail-list-link {
margin-bottom: 15px;
}
-