define('FRIENDICA_CODENAME', 'Asparagus');
define('FRIENDICA_VERSION', '3.6-rc');
define('DFRN_PROTOCOL_VERSION', '2.23');
-define('DB_UPDATE_VERSION', 1255);
+define('DB_UPDATE_VERSION', 1256);
define('NEW_UPDATE_ROUTINE_VERSION', 1170);
/**
-- ------------------------------------------
--- Friendica 3.6-dev (Asparagus)
--- DB_UPDATE_VERSION 1255
+-- Friendica 3.6-rc (Asparagus)
+-- DB_UPDATE_VERSION 1256
-- ------------------------------------------
`author-link` varchar(255) NOT NULL DEFAULT '' COMMENT '',
`author-avatar` varchar(255) NOT NULL DEFAULT '' COMMENT '',
`title` varchar(255) NOT NULL DEFAULT '' COMMENT '',
+ `content-warning` varchar(255) NOT NULL DEFAULT '' COMMENT '',
`body` mediumtext COMMENT '',
`app` varchar(255) NOT NULL DEFAULT '' COMMENT '',
`verb` varchar(100) NOT NULL DEFAULT '' COMMENT '',
return "`item`.`author-id`, `item`.`author-link`, `item`.`author-name`, `item`.`author-avatar`,
`item`.`owner-id`, `item`.`owner-link`, `item`.`owner-name`, `item`.`owner-avatar`,
`item`.`contact-id`, `item`.`uid`, `item`.`id`, `item`.`parent`,
- `item`.`uri`, `item`.`thr-parent`, `item`.`parent-uri`,
+ `item`.`uri`, `item`.`thr-parent`, `item`.`parent-uri`, `item`.`content-warning`,
`item`.`commented`, `item`.`created`, `item`.`edited`, `item`.`received`,
`item`.`verb`, `item`.`object-type`, `item`.`postopts`, `item`.`plink`,
`item`.`guid`, `item`.`wall`, `item`.`private`, `item`.`starred`,
// I'm not sure if we should store it permanently, so we save the old value.
$body = $item["body"];
+ // Add the content warning
+ if (!empty($item['content-warning'])) {
+ $item["body"] = $item['content-warning'] . '[spoiler]' . $item["body"] . '[/spoiler]';
+ }
+
$a = get_app();
redir_private_images($a, $item);
"author-link" => ["type" => "varchar(255)", "not null" => "1", "default" => "", "comment" => ""],
"author-avatar" => ["type" => "varchar(255)", "not null" => "1", "default" => "", "comment" => ""],
"title" => ["type" => "varchar(255)", "not null" => "1", "default" => "", "comment" => ""],
+ "content-warning" => ["type" => "varchar(255)", "not null" => "1", "default" => "", "comment" => ""],
"body" => ["type" => "mediumtext", "comment" => ""],
"app" => ["type" => "varchar(255)", "not null" => "1", "default" => "", "comment" => ""],
"verb" => ["type" => "varchar(100)", "not null" => "1", "default" => "", "comment" => ""],
$item["coord"] = $georsspoint->item(0)->nodeValue;
}
+ $categories = $xpath->query('atom:category', $entry);
+ if ($categories) {
+ foreach ($categories as $category) {
+ foreach ($category->attributes as $attributes) {
+ if ($attributes->name == "term") {
+ $term = $attributes->textContent;
+ if (strlen($item["tag"])) {
+ $item["tag"] .= ',';
+ }
+ $item["tag"] .= "#[url=".System::baseUrl()."/search?tag=".$term."]".$term."[/url]";
+ }
+ }
+ }
+ }
+
$self = '';
$add_body = '';
}
// Mastodon Content Warning
- $content_warning = false;
if (($item["verb"] == ACTIVITY_POST) && $xpath->evaluate('boolean(atom:summary)', $entry)) {
$clear_text = $xpath->query('atom:summary/text()', $entry)->item(0)->nodeValue;
if (!empty($clear_text)) {
- $item["body"] = html2bbcode($clear_text) . '[spoiler]' . $item["body"] . '[/spoiler]';
- $content_warning = true;
+ $item['content-warning'] = html2bbcode($clear_text);
+ //$item["body"] = html2bbcode($clear_text) . '[spoiler]' . $item["body"] . '[/spoiler]';
}
}
$item["parent-uri"] = $item["uri"];
}
- $categories = $xpath->query('atom:category', $entry);
- if ($categories) {
- foreach ($categories as $category) {
- foreach ($category->attributes as $attributes) {
- if ($attributes->name == "term") {
- $term = $attributes->textContent;
- // don't add nsfw with content warning if enabled.
- // Background: "nsfw" is set automatically by Mastodon
- if (!Config::get('system', 'remove_nsfw_with_cw', false) ||
- !$content_warning || ($term != 'nsfw')) {
- if (strlen($item["tag"])) {
- $item["tag"] .= ',';
- }
- $item["tag"] .= "#[url=".System::baseUrl()."/search?tag=".$term."]".$term."[/url]";
- }
- }
- }
- }
- }
-
if (($item['author-link'] != '') && !empty($item['protocol'])) {
$item = Conversation::insert($item);
}