Commit 3c6712f0 authored by Emiliano Balbuena's avatar Emiliano Balbuena

(feat): Tag list for Pro

1 merge request!281WIP: (feat): Minds Pro (development branch)
Pipeline #75066696 passed with stages
in 9 minutes and 37 seconds
......@@ -224,6 +224,21 @@ class Manager
->setFooterLinks(array_values($footerLinks));
}
if (isset($values['tag_list']) && is_array($values['tag_list'])) {
$tagList = array_map(function ($item) {
$tag = trim($item['tag'], "#\t\n\r");
$label = ($item['label'] ?? null) ?: "#{$item['tag']}";
return compact('label', 'tag');
}, array_filter($values['tag_list'], function ($item) {
return $item && $item['tag'];
}));
$settings
->setTagList(array_values($tagList));
}
return $this->repository->update($settings);
}
}
......@@ -95,7 +95,8 @@ class Repository
->setPlainBackgroundColor($data['plain_background_color'] ?? '')
->setLogoGuid($data['logo_guid'] ?? '')
->setFooterText($data['footer_text'] ?? '')
->setFooterLinks($data['footer_links'] ?? []);
->setFooterLinks($data['footer_links'] ?? [])
->setTagList($data['tag_list'] ?? []);
$response[] = $settings;
}
......@@ -138,6 +139,7 @@ class Repository
'logo_guid' => $settings->getLogoGuid(),
'footer_text' => $settings->getFooterText(),
'footer_links' => $settings->getFooterLinks(),
'tag_list' => $settings->getTagList(),
]),
];
......
......@@ -32,6 +32,8 @@ use Minds\Traits\MagicAttributes;
* @method Settings setFooterText(string $footerText)
* @method array getFooterLinks()
* @method Settings setFooterLinks(array $footerLinks)
* @method array getTagList()
* @method Settings setTagList(array $footerLinks)
* @method string getBackgroundImage()
* @method Settings setBackgroundImage(string $backgroundImage)
* @method string getLogoImage()
......@@ -83,6 +85,9 @@ class Settings implements JsonSerializable
/** @var array */
protected $footerLinks = [];
/** @var array */
protected $tagList = [];
/**
* @return array
*/
......@@ -98,6 +103,7 @@ class Settings implements JsonSerializable
'plain_background_color' => $this->plainBackgroundColor ?: static::DEFAULT_PLAIN_BACKGROUND_COLOR,
'footer_text' => $this->footerText,
'footer_links' => $this->footerLinks,
'tag_list' => $this->tagList,
'logo_guid' => (string) $this->logoGuid,
'background_image' => $this->backgroundImage,
'logo_image' => $this->logoImage,
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment