From: Vincent Vanwaelscappel Date: Mon, 22 Aug 2022 18:08:35 +0000 (+0200) Subject: wip #5410 @1.5 X-Git-Url: http://git.cubedesigners.com/?a=commitdiff_plain;h=032c50a9494e69d546dd7543cade0b17494f845c;p=fluidbook-toolbox.git wip #5410 @1.5 --- diff --git a/app/Fluidbook/SEO/Document.php b/app/Fluidbook/SEO/Document.php new file mode 100644 index 000000000..b99a7d676 --- /dev/null +++ b/app/Fluidbook/SEO/Document.php @@ -0,0 +1,175 @@ +compiler = $compiler; + // Define default seo contents + $this->createPages(); + + $file=$this->compiler->getSetting('seoAdvanced',''); + if ($file) { + $sheets = Excel::excelToArray($this->compiler->working_path($file), true); + foreach ($sheets as $sheet) { + $a = $sheet; + break; + } + $minPage = 100000000; + foreach ($a as $item) { + $minPage = min($minPage, $item['page']); + } + $offsetPage = -($minPage - 1); + + foreach ($a as $item) { + $page = $item['page'] + $offsetPage; + $item['url'] = Text::removeAccents($item['url']); + foreach ($item as $k => $v) { + if ($k == 'page') { + continue; + } + $this->pages[$page]->$k = $v; + } + } + } + + $this->html = file_get_contents($this->compiler->assets . '/_index.html'); + } + + public function createPages() + { + $this->pages = []; + if (isset($this->compiler->accessibleTexts) && count($this->compiler->accessibleTexts) > 0) { + foreach ($this->compiler->accessibleTexts as $page => $accessibleText) { + if ($page == 0) { + $page = 1; + } + $this->createPage($page, $accessibleText); + } + if (!isset($this->pages[1])) { + $this->createPage(1, $this->compiler->pages[1]); + } + return; + } + foreach ($this->compiler->pages as $page => $infos) { + $this->createPage($page, $this->getTextContent($infos)); + } + } + + public function createPage($page, $content) + { + $p = new Page($this); + $p->page = $page; + $p->title = ($page == 1) ? $this->compiler->book->parametres->title : $this->_getPageLabel($page); + $p->text = $content; + $p->description = $this->compiler->book->parametres->seoDescription ? $this->compiler->book->parametres->seoDescription : $this->compiler->book->parametres->title . ' - Powered by Fluidbook'; + $p->socialDescription = $this->compiler->book->parametres->facebook_description || $this->compiler->book->parametres->seoDescription; + $p->keywords = $this->compiler->book->parametres->seoKeywords; + $p->robots = $this->compiler->book->parametres->seoRobots ? 'index,follow' : 'noindex,nofollow'; + + // Google analytics + $p->ua = ''; + if ($this->compiler->book->parametres->googleAnalytics != '') { + $codes = explode(',', $this->compiler->book->parametres->googleAnalytics); + $p->ua .= ""; + } + if ($this->compiler->book->parametres->googleAnalyticsCustom != '') { + $p->ua .= $this->compiler->book->parametres->googleAnalyticsCustom; + } + + if ($this->compiler->book->parametres->statsCustom != '') { + $p->footer = $this->compiler->book->parametres->statsCustom; + } + + $this->pages[$page] = $p; + } + + public function getTextContent($infos) + { + switch ($this->compiler->book->parametres->textExtraction) { + case 'poppler': + $prefix = 'p'; + break; + case 'fluidbook': + $prefix = 'f'; + break; + default: + $prefix = ''; + break; + } + + $f = wsDocument::getDir($infos['document_id']) . $prefix . 'h' . $infos['document_page'] . '.txt'; + if (file_exists($f)) { + $res = trim(file_get_contents($f)); + } else { + $res = ''; + } + + if (strpos($res, '
') !== 0) { + $res = preg_replace('|\<\/div\>$|', '', $res); + } + + return $res; + } + + public function _getPageLabel($page) + { + $res = $this->compiler->book->parametres->title; + foreach ($this->compiler->book->chapters as $chapter) { + if (trim($chapter->label, "\t\r\n\0\x0B-+") == '') { + continue; + } + if ($chapter->page == '') { + continue; + } + $p = $this->compiler->virtualToPhysical($chapter->page); + if ($p == '') { + continue; + } + if ($page < $p) { + continue; + } + if ($page >= $p) { + $res = $chapter->label; + } + } + return $res; + } + + public function getNav() + { + if (null == $this->_nav) { + $this->_nav = ''; + } + return $this->_nav; + } + +} diff --git a/app/Fluidbook/SEO/Page.php b/app/Fluidbook/SEO/Page.php new file mode 100644 index 000000000..8b93cd7e1 --- /dev/null +++ b/app/Fluidbook/SEO/Page.php @@ -0,0 +1,134 @@ +_container = $container; + } + + public function getHTML() + { + $html = $this->_container->html; + + if (!$this->canonical) { + $this->canonical = $this->getURL(); + } + if (!$this->next && isset($this->_container->pages[$this->page + 1]) && $this->_container->pages[$this->page + 1] instanceof wsHTML5SeoPage) { + $this->next = $this->_container->pages[$this->page + 1]->getURL(); + } + if (!$this->prev && isset($this->_container->pages[$this->page - 1]) && $this->_container->pages[$this->page - 1] instanceof wsHTML5SeoPage) { + $this->prev = $this->_container->pages[$this->page - 1]->getURL(); + } + + $vars = ['description' => $this->description ? '' : '', + 'keywords' => $this->keywords ? '' : '', + 'titre' => $this->title, + 'canonical' => $this->canonical ? '' : '', + 'prev' => $this->prev ? '' : '', + 'next' => $this->next ? '' : '', + 'robots' => $this->robots ? '' : '', + 'statsfooter' => $this->footer, + 'ga' => $this->ua, + 'seoContent' => $this->getSEOContent(), + 'startpage' => '' . "\n"]; + + if (!$this->_container->compiler->book->parametres->seoVersion) { + $vars['canonical'] = $vars['next'] = $vars['prev'] = ''; + } + + foreach ($vars as $k => $var) { + $html = str_replace('', $var, $html); + } + + return $html; + } + + public function getSEOContent() + { + $res = ''; + if (null !== $this->h1) { + $res .= '

' . htmlentities($this->h1) . '

'; + } + $res .= $this->text; + $res .= $this->_container->getNav(); + return $res; + } + + public function getURL() + { + if (null === $this->url) { + return $this->page . '-' . CubeIT_Text::str2URL(CubeIT_Text::removeAccents($this->title)) . '.html'; + } + return $this->url; + } + + public function getHTMLRelativePath() + { + $url = $this->getURL(); + if (null == $this->url) { + $res = 'p/' . $url; + } + + if ($this->_container->compiler->book->parametres->seoBaseURL == '') { + $res = $url; + } else { + $res = str_replace($this->_container->compiler->book->parametres->seoBaseURL, '', $url); + } + + return ltrim($res, '/'); + } + + /** + * @param string $html + * @param CubeIT_Files_VirtualDirectory $vdir + * @param null|string $path + */ + public function writePage($html, $vdir, $path = null) + { + if ($path == null) { + $path = $this->getHTMLRelativePath(); + } + $relativeLevel = count(explode('/', rtrim($path, "/"))) - 1; + $base = ''; + if ($relativeLevel > 0) { + $base = ''; + } + $html = str_replace('', $base, $html); + + $dir = WS_BOOKS . '/seo/' . $this->_container->compiler->book_id . '/'; + if (!file_exists($dir)) { + mkdir($dir, 0777, true); + } + $file = $dir . $this->page . '.html'; + $hash = sha1($html); + $hashfile = $dir . $this->page . '.hash'; + if (!file_exists($hashfile) || file_get_contents($hashfile) != $hash) { + file_put_contents($file, $html); + file_put_contents($hashfile, $hash); + } + $vdir->copy($file, $path); + } +} diff --git a/app/Jobs/FluidbookCompiler.php b/app/Jobs/FluidbookCompiler.php index 8936fe0ee..423f260ec 100644 --- a/app/Jobs/FluidbookCompiler.php +++ b/app/Jobs/FluidbookCompiler.php @@ -4,8 +4,11 @@ namespace App\Jobs; use App\Models\FluidbookPublication; use App\Models\FluidbookTheme; +use App\Models\FluidbookTranslate; use App\Models\Traits\FluidbookPlayerBranches; use App\Util\FluidbookLinks; +use Cubist\Locale\Country; +use Cubist\Locale\Locale; use Cubist\Util\ArrayUtil; use Cubist\Util\CommandLine; use Cubist\Util\Data; @@ -238,12 +241,12 @@ class FluidbookCompiler extends Base implements CompilerInterface public $seo = null; /** - * @var \Cubist\Backpack\Magic\PageData + * @var \Cubist\Backpack\Magic\EntityData */ public $fluidbookSettings; /** - * @var \Cubist\Backpack\Magic\PageData + * @var \Cubist\Backpack\Magic\EntityData */ public $themeSettings; @@ -2051,58 +2054,38 @@ height="0" width="0" style="display:none;visibility:hidden"> if (!isset($this->config->l10n)) { $this->writeLangs(); } - - if (isset($this->config->l10n['default']->$str)) { - return $this->config->l10n['default']->$str; - } else { - return $str; - } + return $this->config->get('l10n.default.' . $str, $str); } protected function writeLangs() { - $daoLang = new wsDAOLang($core->con); - $lang = $daoLang->selectById($this->getFluidbook()->lang); - $langs = $daoLang->selectAll(); - - $t = ObjectUtil::toArray($this->getFluidbook()->traductions); - - $traductions = (!is_countable($t) || !count($t)) ? $lang->traductions : $t; + $this->config->defaultLang = $this->getFluidbook()->locale; + $l10n = FluidbookTranslate::getCompiledTranslations(); + $l10n['default'] = $l10n[$this->config->defaultLang]; + foreach ($this->getFluidbook()->translations as $k => $v) { + $l10n['default'][$k] = $v; + } + $this->config->setRaw('l10n', $l10n); - $this->config->l10n = array(); - $this->config->l10n['default'] = $traductions; - $this->config->defaultLang = $this->getFluidbook()->lang; - foreach ($langs as $lang) { - $this->config->l10n[$lang->lang_id] = $lang->traductions; - } - $iso = l10n::getISOcodes(); - if ($this->fluidbookSettings->multilang != '') { - $flagsDir = 'images/flags'; - if (!file_exists($flagsDir)) { - mkdir($flagsDir); - } - $ml = str_replace("\r", "\n", $this->fluidbookSettings->multilang); - $ml = str_replace("\n\n", "\n", $ml); - $e = explode("\n", $ml); + $multilang = Text::explodeNewLines($this->config->get('multilang', '')); + if (count($multilang)) { $m = array(); - foreach ($e as $l1) { - $l1 = trim($l1); - if ($l1 == '') { + foreach ($multilang as $line) { + $line = trim($line); + if ($line == '') { continue; } - $l = explode(',', $l1); + $l = explode(',', $line); + $locale = $l[0]; $flag = $l[1]; - - $ll = explode('-', $l[0]); - - $this->vdir->copy(cubeMedia::getFlagFile($flag), $flagsDir . '/' . $flag . '.png'); - $l[3] = cubeText::ucfirst($iso[$l[0]]); - $l[4] = cubeCountry::getCountryName($flag, $ll[0]); + $this->getVirtualDirectory()->copy(resource_path('fluidbookpublication/flags/' . $flag . '.png'), 'images/flags/' . $flag . '.png'); + $l[3] = Text::ucfirst(Locale::translate($locale, $locale)); + $l[4] = Country::translate($flag, $locale); $m[] = implode(',', $l); } - $this->config->multilang = implode("\n", $m); + $this->config->setRaw('multilang', implode("\n", $m)); } } diff --git a/app/Models/FluidbookTranslate.php b/app/Models/FluidbookTranslate.php index 320c41b1c..60757ab4d 100644 --- a/app/Models/FluidbookTranslate.php +++ b/app/Models/FluidbookTranslate.php @@ -74,8 +74,8 @@ class FluidbookTranslate extends Translate $t = FluidbookTranslate::find(1); try { $json = json_decode($t->getRawOriginal('content_translatable'), true, 512, JSON_THROW_ON_ERROR); - }catch (\Exception $e){ - $json=[]; + } catch (\Exception $e) { + $json = []; } self::$_allTranslations = []; @@ -96,6 +96,23 @@ class FluidbookTranslate extends Translate return self::$_allTranslations; } + public static function getCompiledTranslations() + { + $raw = self::getAllFluidbookTranslations(); + $res = []; + foreach ($raw as $code => $data) { + $res[$code] = []; + foreach ($data as $k => $v) { + if (is_string($v)) { + $res[$code][$k] = $v; + } else { + $res[$code][$v['str']] = $v['translation']; + } + } + } + return $res; + } + /** * @throws \JsonException */ diff --git a/resources/fluidbookpublication/flags/ad.png b/resources/fluidbookpublication/flags/ad.png new file mode 100644 index 000000000..625ca84f9 Binary files /dev/null and b/resources/fluidbookpublication/flags/ad.png differ diff --git a/resources/fluidbookpublication/flags/ae.png b/resources/fluidbookpublication/flags/ae.png new file mode 100644 index 000000000..ef3a1ecfc Binary files /dev/null and b/resources/fluidbookpublication/flags/ae.png differ diff --git a/resources/fluidbookpublication/flags/af.png b/resources/fluidbookpublication/flags/af.png new file mode 100644 index 000000000..a4742e299 Binary files /dev/null and b/resources/fluidbookpublication/flags/af.png differ diff --git a/resources/fluidbookpublication/flags/ag.png b/resources/fluidbookpublication/flags/ag.png new file mode 100644 index 000000000..556d5504d Binary files /dev/null and b/resources/fluidbookpublication/flags/ag.png differ diff --git a/resources/fluidbookpublication/flags/ai.png b/resources/fluidbookpublication/flags/ai.png new file mode 100644 index 000000000..74ed29d92 Binary files /dev/null and b/resources/fluidbookpublication/flags/ai.png differ diff --git a/resources/fluidbookpublication/flags/al.png b/resources/fluidbookpublication/flags/al.png new file mode 100644 index 000000000..92354cb6e Binary files /dev/null and b/resources/fluidbookpublication/flags/al.png differ diff --git a/resources/fluidbookpublication/flags/am.png b/resources/fluidbookpublication/flags/am.png new file mode 100644 index 000000000..344a2a86c Binary files /dev/null and b/resources/fluidbookpublication/flags/am.png differ diff --git a/resources/fluidbookpublication/flags/an.png b/resources/fluidbookpublication/flags/an.png new file mode 100644 index 000000000..633e4b89f Binary files /dev/null and b/resources/fluidbookpublication/flags/an.png differ diff --git a/resources/fluidbookpublication/flags/ao.png b/resources/fluidbookpublication/flags/ao.png new file mode 100644 index 000000000..bcbd1d6d4 Binary files /dev/null and b/resources/fluidbookpublication/flags/ao.png differ diff --git a/resources/fluidbookpublication/flags/ar.png b/resources/fluidbookpublication/flags/ar.png new file mode 100644 index 000000000..e5ef8f1fc Binary files /dev/null and b/resources/fluidbookpublication/flags/ar.png differ diff --git a/resources/fluidbookpublication/flags/as.png b/resources/fluidbookpublication/flags/as.png new file mode 100644 index 000000000..32f30e4ce Binary files /dev/null and b/resources/fluidbookpublication/flags/as.png differ diff --git a/resources/fluidbookpublication/flags/at.png b/resources/fluidbookpublication/flags/at.png new file mode 100644 index 000000000..0f15f34f2 Binary files /dev/null and b/resources/fluidbookpublication/flags/at.png differ diff --git a/resources/fluidbookpublication/flags/au.png b/resources/fluidbookpublication/flags/au.png new file mode 100644 index 000000000..a01389a74 Binary files /dev/null and b/resources/fluidbookpublication/flags/au.png differ diff --git a/resources/fluidbookpublication/flags/aw.png b/resources/fluidbookpublication/flags/aw.png new file mode 100644 index 000000000..a3579c2d6 Binary files /dev/null and b/resources/fluidbookpublication/flags/aw.png differ diff --git a/resources/fluidbookpublication/flags/ax.png b/resources/fluidbookpublication/flags/ax.png new file mode 100644 index 000000000..1eea80a7b Binary files /dev/null and b/resources/fluidbookpublication/flags/ax.png differ diff --git a/resources/fluidbookpublication/flags/az.png b/resources/fluidbookpublication/flags/az.png new file mode 100644 index 000000000..4ee9fe5ce Binary files /dev/null and b/resources/fluidbookpublication/flags/az.png differ diff --git a/resources/fluidbookpublication/flags/ba.png b/resources/fluidbookpublication/flags/ba.png new file mode 100644 index 000000000..c77499249 Binary files /dev/null and b/resources/fluidbookpublication/flags/ba.png differ diff --git a/resources/fluidbookpublication/flags/bb.png b/resources/fluidbookpublication/flags/bb.png new file mode 100644 index 000000000..0df19c71d Binary files /dev/null and b/resources/fluidbookpublication/flags/bb.png differ diff --git a/resources/fluidbookpublication/flags/bd.png b/resources/fluidbookpublication/flags/bd.png new file mode 100644 index 000000000..076a8bf87 Binary files /dev/null and b/resources/fluidbookpublication/flags/bd.png differ diff --git a/resources/fluidbookpublication/flags/be.png b/resources/fluidbookpublication/flags/be.png new file mode 100644 index 000000000..d86ebc800 Binary files /dev/null and b/resources/fluidbookpublication/flags/be.png differ diff --git a/resources/fluidbookpublication/flags/bf.png b/resources/fluidbookpublication/flags/bf.png new file mode 100644 index 000000000..ab5ce8fe1 Binary files /dev/null and b/resources/fluidbookpublication/flags/bf.png differ diff --git a/resources/fluidbookpublication/flags/bg.png b/resources/fluidbookpublication/flags/bg.png new file mode 100644 index 000000000..0469f0607 Binary files /dev/null and b/resources/fluidbookpublication/flags/bg.png differ diff --git a/resources/fluidbookpublication/flags/bh.png b/resources/fluidbookpublication/flags/bh.png new file mode 100644 index 000000000..ea8ce6876 Binary files /dev/null and b/resources/fluidbookpublication/flags/bh.png differ diff --git a/resources/fluidbookpublication/flags/bi.png b/resources/fluidbookpublication/flags/bi.png new file mode 100644 index 000000000..5cc2e30cf Binary files /dev/null and b/resources/fluidbookpublication/flags/bi.png differ diff --git a/resources/fluidbookpublication/flags/bj.png b/resources/fluidbookpublication/flags/bj.png new file mode 100644 index 000000000..1cc8b458a Binary files /dev/null and b/resources/fluidbookpublication/flags/bj.png differ diff --git a/resources/fluidbookpublication/flags/bm.png b/resources/fluidbookpublication/flags/bm.png new file mode 100644 index 000000000..c0c7aead8 Binary files /dev/null and b/resources/fluidbookpublication/flags/bm.png differ diff --git a/resources/fluidbookpublication/flags/bn.png b/resources/fluidbookpublication/flags/bn.png new file mode 100644 index 000000000..8fb09849e Binary files /dev/null and b/resources/fluidbookpublication/flags/bn.png differ diff --git a/resources/fluidbookpublication/flags/bo.png b/resources/fluidbookpublication/flags/bo.png new file mode 100644 index 000000000..ce7ba522a Binary files /dev/null and b/resources/fluidbookpublication/flags/bo.png differ diff --git a/resources/fluidbookpublication/flags/br.png b/resources/fluidbookpublication/flags/br.png new file mode 100644 index 000000000..9b1a5538b Binary files /dev/null and b/resources/fluidbookpublication/flags/br.png differ diff --git a/resources/fluidbookpublication/flags/bs.png b/resources/fluidbookpublication/flags/bs.png new file mode 100644 index 000000000..639fa6cfa Binary files /dev/null and b/resources/fluidbookpublication/flags/bs.png differ diff --git a/resources/fluidbookpublication/flags/bt.png b/resources/fluidbookpublication/flags/bt.png new file mode 100644 index 000000000..1d512dfff Binary files /dev/null and b/resources/fluidbookpublication/flags/bt.png differ diff --git a/resources/fluidbookpublication/flags/bv.png b/resources/fluidbookpublication/flags/bv.png new file mode 100644 index 000000000..160b6b5b7 Binary files /dev/null and b/resources/fluidbookpublication/flags/bv.png differ diff --git a/resources/fluidbookpublication/flags/bw.png b/resources/fluidbookpublication/flags/bw.png new file mode 100644 index 000000000..fcb103941 Binary files /dev/null and b/resources/fluidbookpublication/flags/bw.png differ diff --git a/resources/fluidbookpublication/flags/by.png b/resources/fluidbookpublication/flags/by.png new file mode 100644 index 000000000..504774ec1 Binary files /dev/null and b/resources/fluidbookpublication/flags/by.png differ diff --git a/resources/fluidbookpublication/flags/bz.png b/resources/fluidbookpublication/flags/bz.png new file mode 100644 index 000000000..be63ee1c6 Binary files /dev/null and b/resources/fluidbookpublication/flags/bz.png differ diff --git a/resources/fluidbookpublication/flags/ca.png b/resources/fluidbookpublication/flags/ca.png new file mode 100644 index 000000000..1f204193a Binary files /dev/null and b/resources/fluidbookpublication/flags/ca.png differ diff --git a/resources/fluidbookpublication/flags/catalonia.png b/resources/fluidbookpublication/flags/catalonia.png new file mode 100644 index 000000000..5041e308e Binary files /dev/null and b/resources/fluidbookpublication/flags/catalonia.png differ diff --git a/resources/fluidbookpublication/flags/cc.png b/resources/fluidbookpublication/flags/cc.png new file mode 100644 index 000000000..aed3d3b4e Binary files /dev/null and b/resources/fluidbookpublication/flags/cc.png differ diff --git a/resources/fluidbookpublication/flags/cd.png b/resources/fluidbookpublication/flags/cd.png new file mode 100644 index 000000000..5e4894248 Binary files /dev/null and b/resources/fluidbookpublication/flags/cd.png differ diff --git a/resources/fluidbookpublication/flags/cf.png b/resources/fluidbookpublication/flags/cf.png new file mode 100644 index 000000000..da687bdce Binary files /dev/null and b/resources/fluidbookpublication/flags/cf.png differ diff --git a/resources/fluidbookpublication/flags/cg.png b/resources/fluidbookpublication/flags/cg.png new file mode 100644 index 000000000..a859792ef Binary files /dev/null and b/resources/fluidbookpublication/flags/cg.png differ diff --git a/resources/fluidbookpublication/flags/ch.png b/resources/fluidbookpublication/flags/ch.png new file mode 100644 index 000000000..604f1c307 Binary files /dev/null and b/resources/fluidbookpublication/flags/ch.png differ diff --git a/resources/fluidbookpublication/flags/ci.png b/resources/fluidbookpublication/flags/ci.png new file mode 100644 index 000000000..3f2c62eb4 Binary files /dev/null and b/resources/fluidbookpublication/flags/ci.png differ diff --git a/resources/fluidbookpublication/flags/ck.png b/resources/fluidbookpublication/flags/ck.png new file mode 100644 index 000000000..746d3d6f7 Binary files /dev/null and b/resources/fluidbookpublication/flags/ck.png differ diff --git a/resources/fluidbookpublication/flags/cl.png b/resources/fluidbookpublication/flags/cl.png new file mode 100644 index 000000000..29c6d61bd Binary files /dev/null and b/resources/fluidbookpublication/flags/cl.png differ diff --git a/resources/fluidbookpublication/flags/cm.png b/resources/fluidbookpublication/flags/cm.png new file mode 100644 index 000000000..f65c5bd5a Binary files /dev/null and b/resources/fluidbookpublication/flags/cm.png differ diff --git a/resources/fluidbookpublication/flags/cn.png b/resources/fluidbookpublication/flags/cn.png new file mode 100644 index 000000000..891441462 Binary files /dev/null and b/resources/fluidbookpublication/flags/cn.png differ diff --git a/resources/fluidbookpublication/flags/co.png b/resources/fluidbookpublication/flags/co.png new file mode 100644 index 000000000..a118ff4a1 Binary files /dev/null and b/resources/fluidbookpublication/flags/co.png differ diff --git a/resources/fluidbookpublication/flags/cr.png b/resources/fluidbookpublication/flags/cr.png new file mode 100644 index 000000000..c7a373179 Binary files /dev/null and b/resources/fluidbookpublication/flags/cr.png differ diff --git a/resources/fluidbookpublication/flags/cs.png b/resources/fluidbookpublication/flags/cs.png new file mode 100644 index 000000000..8254790ca Binary files /dev/null and b/resources/fluidbookpublication/flags/cs.png differ diff --git a/resources/fluidbookpublication/flags/cu.png b/resources/fluidbookpublication/flags/cu.png new file mode 100644 index 000000000..083f1d611 Binary files /dev/null and b/resources/fluidbookpublication/flags/cu.png differ diff --git a/resources/fluidbookpublication/flags/cv.png b/resources/fluidbookpublication/flags/cv.png new file mode 100644 index 000000000..a63f7eaf6 Binary files /dev/null and b/resources/fluidbookpublication/flags/cv.png differ diff --git a/resources/fluidbookpublication/flags/cx.png b/resources/fluidbookpublication/flags/cx.png new file mode 100644 index 000000000..48e31adbf Binary files /dev/null and b/resources/fluidbookpublication/flags/cx.png differ diff --git a/resources/fluidbookpublication/flags/cy.png b/resources/fluidbookpublication/flags/cy.png new file mode 100644 index 000000000..5b1ad6c07 Binary files /dev/null and b/resources/fluidbookpublication/flags/cy.png differ diff --git a/resources/fluidbookpublication/flags/cz.png b/resources/fluidbookpublication/flags/cz.png new file mode 100644 index 000000000..c8403dd21 Binary files /dev/null and b/resources/fluidbookpublication/flags/cz.png differ diff --git a/resources/fluidbookpublication/flags/de.png b/resources/fluidbookpublication/flags/de.png new file mode 100644 index 000000000..ac4a97736 Binary files /dev/null and b/resources/fluidbookpublication/flags/de.png differ diff --git a/resources/fluidbookpublication/flags/dj.png b/resources/fluidbookpublication/flags/dj.png new file mode 100644 index 000000000..582af364f Binary files /dev/null and b/resources/fluidbookpublication/flags/dj.png differ diff --git a/resources/fluidbookpublication/flags/dk.png b/resources/fluidbookpublication/flags/dk.png new file mode 100644 index 000000000..e2993d3c5 Binary files /dev/null and b/resources/fluidbookpublication/flags/dk.png differ diff --git a/resources/fluidbookpublication/flags/dm.png b/resources/fluidbookpublication/flags/dm.png new file mode 100644 index 000000000..5fbffcba3 Binary files /dev/null and b/resources/fluidbookpublication/flags/dm.png differ diff --git a/resources/fluidbookpublication/flags/do.png b/resources/fluidbookpublication/flags/do.png new file mode 100644 index 000000000..5a04932d8 Binary files /dev/null and b/resources/fluidbookpublication/flags/do.png differ diff --git a/resources/fluidbookpublication/flags/dz.png b/resources/fluidbookpublication/flags/dz.png new file mode 100644 index 000000000..335c2391d Binary files /dev/null and b/resources/fluidbookpublication/flags/dz.png differ diff --git a/resources/fluidbookpublication/flags/ec.png b/resources/fluidbookpublication/flags/ec.png new file mode 100644 index 000000000..0caa0b1e7 Binary files /dev/null and b/resources/fluidbookpublication/flags/ec.png differ diff --git a/resources/fluidbookpublication/flags/ee.png b/resources/fluidbookpublication/flags/ee.png new file mode 100644 index 000000000..0c82efb7d Binary files /dev/null and b/resources/fluidbookpublication/flags/ee.png differ diff --git a/resources/fluidbookpublication/flags/eg.png b/resources/fluidbookpublication/flags/eg.png new file mode 100644 index 000000000..8a3f7a10b Binary files /dev/null and b/resources/fluidbookpublication/flags/eg.png differ diff --git a/resources/fluidbookpublication/flags/eh.png b/resources/fluidbookpublication/flags/eh.png new file mode 100644 index 000000000..90a1195b4 Binary files /dev/null and b/resources/fluidbookpublication/flags/eh.png differ diff --git a/resources/fluidbookpublication/flags/england.png b/resources/fluidbookpublication/flags/england.png new file mode 100644 index 000000000..3a7311d56 Binary files /dev/null and b/resources/fluidbookpublication/flags/england.png differ diff --git a/resources/fluidbookpublication/flags/er.png b/resources/fluidbookpublication/flags/er.png new file mode 100644 index 000000000..13065ae99 Binary files /dev/null and b/resources/fluidbookpublication/flags/er.png differ diff --git a/resources/fluidbookpublication/flags/es.png b/resources/fluidbookpublication/flags/es.png new file mode 100644 index 000000000..c2de2d711 Binary files /dev/null and b/resources/fluidbookpublication/flags/es.png differ diff --git a/resources/fluidbookpublication/flags/et.png b/resources/fluidbookpublication/flags/et.png new file mode 100644 index 000000000..2e893fa05 Binary files /dev/null and b/resources/fluidbookpublication/flags/et.png differ diff --git a/resources/fluidbookpublication/flags/europeanunion.png b/resources/fluidbookpublication/flags/europeanunion.png new file mode 100644 index 000000000..d6d871158 Binary files /dev/null and b/resources/fluidbookpublication/flags/europeanunion.png differ diff --git a/resources/fluidbookpublication/flags/fam.png b/resources/fluidbookpublication/flags/fam.png new file mode 100644 index 000000000..cf50c759e Binary files /dev/null and b/resources/fluidbookpublication/flags/fam.png differ diff --git a/resources/fluidbookpublication/flags/fi.png b/resources/fluidbookpublication/flags/fi.png new file mode 100644 index 000000000..14ec091b8 Binary files /dev/null and b/resources/fluidbookpublication/flags/fi.png differ diff --git a/resources/fluidbookpublication/flags/fj.png b/resources/fluidbookpublication/flags/fj.png new file mode 100644 index 000000000..cee998892 Binary files /dev/null and b/resources/fluidbookpublication/flags/fj.png differ diff --git a/resources/fluidbookpublication/flags/fk.png b/resources/fluidbookpublication/flags/fk.png new file mode 100644 index 000000000..ceaeb27de Binary files /dev/null and b/resources/fluidbookpublication/flags/fk.png differ diff --git a/resources/fluidbookpublication/flags/fm.png b/resources/fluidbookpublication/flags/fm.png new file mode 100644 index 000000000..066bb2473 Binary files /dev/null and b/resources/fluidbookpublication/flags/fm.png differ diff --git a/resources/fluidbookpublication/flags/fo.png b/resources/fluidbookpublication/flags/fo.png new file mode 100644 index 000000000..cbceb809e Binary files /dev/null and b/resources/fluidbookpublication/flags/fo.png differ diff --git a/resources/fluidbookpublication/flags/fr.png b/resources/fluidbookpublication/flags/fr.png new file mode 100644 index 000000000..8332c4ec2 Binary files /dev/null and b/resources/fluidbookpublication/flags/fr.png differ diff --git a/resources/fluidbookpublication/flags/ga.png b/resources/fluidbookpublication/flags/ga.png new file mode 100644 index 000000000..0e0d43436 Binary files /dev/null and b/resources/fluidbookpublication/flags/ga.png differ diff --git a/resources/fluidbookpublication/flags/gb.png b/resources/fluidbookpublication/flags/gb.png new file mode 100644 index 000000000..ff701e19f Binary files /dev/null and b/resources/fluidbookpublication/flags/gb.png differ diff --git a/resources/fluidbookpublication/flags/gd.png b/resources/fluidbookpublication/flags/gd.png new file mode 100644 index 000000000..9ab57f548 Binary files /dev/null and b/resources/fluidbookpublication/flags/gd.png differ diff --git a/resources/fluidbookpublication/flags/ge.png b/resources/fluidbookpublication/flags/ge.png new file mode 100644 index 000000000..728d97078 Binary files /dev/null and b/resources/fluidbookpublication/flags/ge.png differ diff --git a/resources/fluidbookpublication/flags/gf.png b/resources/fluidbookpublication/flags/gf.png new file mode 100644 index 000000000..8332c4ec2 Binary files /dev/null and b/resources/fluidbookpublication/flags/gf.png differ diff --git a/resources/fluidbookpublication/flags/gh.png b/resources/fluidbookpublication/flags/gh.png new file mode 100644 index 000000000..4e2f89659 Binary files /dev/null and b/resources/fluidbookpublication/flags/gh.png differ diff --git a/resources/fluidbookpublication/flags/gi.png b/resources/fluidbookpublication/flags/gi.png new file mode 100644 index 000000000..e76797f62 Binary files /dev/null and b/resources/fluidbookpublication/flags/gi.png differ diff --git a/resources/fluidbookpublication/flags/gl.png b/resources/fluidbookpublication/flags/gl.png new file mode 100644 index 000000000..ef12a73bf Binary files /dev/null and b/resources/fluidbookpublication/flags/gl.png differ diff --git a/resources/fluidbookpublication/flags/gm.png b/resources/fluidbookpublication/flags/gm.png new file mode 100644 index 000000000..0720b667a Binary files /dev/null and b/resources/fluidbookpublication/flags/gm.png differ diff --git a/resources/fluidbookpublication/flags/gn.png b/resources/fluidbookpublication/flags/gn.png new file mode 100644 index 000000000..ea660b01f Binary files /dev/null and b/resources/fluidbookpublication/flags/gn.png differ diff --git a/resources/fluidbookpublication/flags/gp.png b/resources/fluidbookpublication/flags/gp.png new file mode 100644 index 000000000..dbb086d00 Binary files /dev/null and b/resources/fluidbookpublication/flags/gp.png differ diff --git a/resources/fluidbookpublication/flags/gq.png b/resources/fluidbookpublication/flags/gq.png new file mode 100644 index 000000000..ebe20a28d Binary files /dev/null and b/resources/fluidbookpublication/flags/gq.png differ diff --git a/resources/fluidbookpublication/flags/gr.png b/resources/fluidbookpublication/flags/gr.png new file mode 100644 index 000000000..8651ade7c Binary files /dev/null and b/resources/fluidbookpublication/flags/gr.png differ diff --git a/resources/fluidbookpublication/flags/gs.png b/resources/fluidbookpublication/flags/gs.png new file mode 100644 index 000000000..7ef0bf598 Binary files /dev/null and b/resources/fluidbookpublication/flags/gs.png differ diff --git a/resources/fluidbookpublication/flags/gt.png b/resources/fluidbookpublication/flags/gt.png new file mode 100644 index 000000000..c43a70d36 Binary files /dev/null and b/resources/fluidbookpublication/flags/gt.png differ diff --git a/resources/fluidbookpublication/flags/gu.png b/resources/fluidbookpublication/flags/gu.png new file mode 100644 index 000000000..92f37c053 Binary files /dev/null and b/resources/fluidbookpublication/flags/gu.png differ diff --git a/resources/fluidbookpublication/flags/gw.png b/resources/fluidbookpublication/flags/gw.png new file mode 100644 index 000000000..b37bcf06b Binary files /dev/null and b/resources/fluidbookpublication/flags/gw.png differ diff --git a/resources/fluidbookpublication/flags/gy.png b/resources/fluidbookpublication/flags/gy.png new file mode 100644 index 000000000..22cbe2f59 Binary files /dev/null and b/resources/fluidbookpublication/flags/gy.png differ diff --git a/resources/fluidbookpublication/flags/hk.png b/resources/fluidbookpublication/flags/hk.png new file mode 100644 index 000000000..d5c380ca9 Binary files /dev/null and b/resources/fluidbookpublication/flags/hk.png differ diff --git a/resources/fluidbookpublication/flags/hm.png b/resources/fluidbookpublication/flags/hm.png new file mode 100644 index 000000000..a01389a74 Binary files /dev/null and b/resources/fluidbookpublication/flags/hm.png differ diff --git a/resources/fluidbookpublication/flags/hn.png b/resources/fluidbookpublication/flags/hn.png new file mode 100644 index 000000000..96f838859 Binary files /dev/null and b/resources/fluidbookpublication/flags/hn.png differ diff --git a/resources/fluidbookpublication/flags/hr.png b/resources/fluidbookpublication/flags/hr.png new file mode 100644 index 000000000..696b51546 Binary files /dev/null and b/resources/fluidbookpublication/flags/hr.png differ diff --git a/resources/fluidbookpublication/flags/ht.png b/resources/fluidbookpublication/flags/ht.png new file mode 100644 index 000000000..416052af7 Binary files /dev/null and b/resources/fluidbookpublication/flags/ht.png differ diff --git a/resources/fluidbookpublication/flags/hu.png b/resources/fluidbookpublication/flags/hu.png new file mode 100644 index 000000000..7baafe44d Binary files /dev/null and b/resources/fluidbookpublication/flags/hu.png differ diff --git a/resources/fluidbookpublication/flags/id.png b/resources/fluidbookpublication/flags/id.png new file mode 100644 index 000000000..c6bc0fafa Binary files /dev/null and b/resources/fluidbookpublication/flags/id.png differ diff --git a/resources/fluidbookpublication/flags/ie.png b/resources/fluidbookpublication/flags/ie.png new file mode 100644 index 000000000..26baa31e1 Binary files /dev/null and b/resources/fluidbookpublication/flags/ie.png differ diff --git a/resources/fluidbookpublication/flags/il.png b/resources/fluidbookpublication/flags/il.png new file mode 100644 index 000000000..2ca772d0b Binary files /dev/null and b/resources/fluidbookpublication/flags/il.png differ diff --git a/resources/fluidbookpublication/flags/in.png b/resources/fluidbookpublication/flags/in.png new file mode 100644 index 000000000..e4d7e81a9 Binary files /dev/null and b/resources/fluidbookpublication/flags/in.png differ diff --git a/resources/fluidbookpublication/flags/io.png b/resources/fluidbookpublication/flags/io.png new file mode 100644 index 000000000..3e74b6a31 Binary files /dev/null and b/resources/fluidbookpublication/flags/io.png differ diff --git a/resources/fluidbookpublication/flags/iq.png b/resources/fluidbookpublication/flags/iq.png new file mode 100644 index 000000000..878a35140 Binary files /dev/null and b/resources/fluidbookpublication/flags/iq.png differ diff --git a/resources/fluidbookpublication/flags/ir.png b/resources/fluidbookpublication/flags/ir.png new file mode 100644 index 000000000..c5fd136ae Binary files /dev/null and b/resources/fluidbookpublication/flags/ir.png differ diff --git a/resources/fluidbookpublication/flags/is.png b/resources/fluidbookpublication/flags/is.png new file mode 100644 index 000000000..b8f6d0f06 Binary files /dev/null and b/resources/fluidbookpublication/flags/is.png differ diff --git a/resources/fluidbookpublication/flags/it.png b/resources/fluidbookpublication/flags/it.png new file mode 100644 index 000000000..89692f74f Binary files /dev/null and b/resources/fluidbookpublication/flags/it.png differ diff --git a/resources/fluidbookpublication/flags/jm.png b/resources/fluidbookpublication/flags/jm.png new file mode 100644 index 000000000..7be119e03 Binary files /dev/null and b/resources/fluidbookpublication/flags/jm.png differ diff --git a/resources/fluidbookpublication/flags/jo.png b/resources/fluidbookpublication/flags/jo.png new file mode 100644 index 000000000..11bd4972b Binary files /dev/null and b/resources/fluidbookpublication/flags/jo.png differ diff --git a/resources/fluidbookpublication/flags/jp.png b/resources/fluidbookpublication/flags/jp.png new file mode 100644 index 000000000..325fbad3f Binary files /dev/null and b/resources/fluidbookpublication/flags/jp.png differ diff --git a/resources/fluidbookpublication/flags/ke.png b/resources/fluidbookpublication/flags/ke.png new file mode 100644 index 000000000..51879adf1 Binary files /dev/null and b/resources/fluidbookpublication/flags/ke.png differ diff --git a/resources/fluidbookpublication/flags/kg.png b/resources/fluidbookpublication/flags/kg.png new file mode 100644 index 000000000..0a818f67e Binary files /dev/null and b/resources/fluidbookpublication/flags/kg.png differ diff --git a/resources/fluidbookpublication/flags/kh.png b/resources/fluidbookpublication/flags/kh.png new file mode 100644 index 000000000..30f6bb1b9 Binary files /dev/null and b/resources/fluidbookpublication/flags/kh.png differ diff --git a/resources/fluidbookpublication/flags/ki.png b/resources/fluidbookpublication/flags/ki.png new file mode 100644 index 000000000..2dcce4b33 Binary files /dev/null and b/resources/fluidbookpublication/flags/ki.png differ diff --git a/resources/fluidbookpublication/flags/km.png b/resources/fluidbookpublication/flags/km.png new file mode 100644 index 000000000..812b2f56c Binary files /dev/null and b/resources/fluidbookpublication/flags/km.png differ diff --git a/resources/fluidbookpublication/flags/kn.png b/resources/fluidbookpublication/flags/kn.png new file mode 100644 index 000000000..febd5b486 Binary files /dev/null and b/resources/fluidbookpublication/flags/kn.png differ diff --git a/resources/fluidbookpublication/flags/kp.png b/resources/fluidbookpublication/flags/kp.png new file mode 100644 index 000000000..d3d509aa8 Binary files /dev/null and b/resources/fluidbookpublication/flags/kp.png differ diff --git a/resources/fluidbookpublication/flags/kr.png b/resources/fluidbookpublication/flags/kr.png new file mode 100644 index 000000000..9c0a78eb9 Binary files /dev/null and b/resources/fluidbookpublication/flags/kr.png differ diff --git a/resources/fluidbookpublication/flags/kw.png b/resources/fluidbookpublication/flags/kw.png new file mode 100644 index 000000000..96546da32 Binary files /dev/null and b/resources/fluidbookpublication/flags/kw.png differ diff --git a/resources/fluidbookpublication/flags/ky.png b/resources/fluidbookpublication/flags/ky.png new file mode 100644 index 000000000..15c5f8e47 Binary files /dev/null and b/resources/fluidbookpublication/flags/ky.png differ diff --git a/resources/fluidbookpublication/flags/kz.png b/resources/fluidbookpublication/flags/kz.png new file mode 100644 index 000000000..45a8c8874 Binary files /dev/null and b/resources/fluidbookpublication/flags/kz.png differ diff --git a/resources/fluidbookpublication/flags/la.png b/resources/fluidbookpublication/flags/la.png new file mode 100644 index 000000000..e28acd018 Binary files /dev/null and b/resources/fluidbookpublication/flags/la.png differ diff --git a/resources/fluidbookpublication/flags/lb.png b/resources/fluidbookpublication/flags/lb.png new file mode 100644 index 000000000..d0d452bf8 Binary files /dev/null and b/resources/fluidbookpublication/flags/lb.png differ diff --git a/resources/fluidbookpublication/flags/lc.png b/resources/fluidbookpublication/flags/lc.png new file mode 100644 index 000000000..a47d06554 Binary files /dev/null and b/resources/fluidbookpublication/flags/lc.png differ diff --git a/resources/fluidbookpublication/flags/li.png b/resources/fluidbookpublication/flags/li.png new file mode 100644 index 000000000..6469909c0 Binary files /dev/null and b/resources/fluidbookpublication/flags/li.png differ diff --git a/resources/fluidbookpublication/flags/lk.png b/resources/fluidbookpublication/flags/lk.png new file mode 100644 index 000000000..088aad6db Binary files /dev/null and b/resources/fluidbookpublication/flags/lk.png differ diff --git a/resources/fluidbookpublication/flags/lr.png b/resources/fluidbookpublication/flags/lr.png new file mode 100644 index 000000000..89a5bc7e7 Binary files /dev/null and b/resources/fluidbookpublication/flags/lr.png differ diff --git a/resources/fluidbookpublication/flags/ls.png b/resources/fluidbookpublication/flags/ls.png new file mode 100644 index 000000000..33fdef101 Binary files /dev/null and b/resources/fluidbookpublication/flags/ls.png differ diff --git a/resources/fluidbookpublication/flags/lt.png b/resources/fluidbookpublication/flags/lt.png new file mode 100644 index 000000000..c8ef0da09 Binary files /dev/null and b/resources/fluidbookpublication/flags/lt.png differ diff --git a/resources/fluidbookpublication/flags/lu.png b/resources/fluidbookpublication/flags/lu.png new file mode 100644 index 000000000..4cabba98a Binary files /dev/null and b/resources/fluidbookpublication/flags/lu.png differ diff --git a/resources/fluidbookpublication/flags/lv.png b/resources/fluidbookpublication/flags/lv.png new file mode 100644 index 000000000..49b699810 Binary files /dev/null and b/resources/fluidbookpublication/flags/lv.png differ diff --git a/resources/fluidbookpublication/flags/ly.png b/resources/fluidbookpublication/flags/ly.png new file mode 100644 index 000000000..b163a9f8a Binary files /dev/null and b/resources/fluidbookpublication/flags/ly.png differ diff --git a/resources/fluidbookpublication/flags/ma.png b/resources/fluidbookpublication/flags/ma.png new file mode 100644 index 000000000..f38677028 Binary files /dev/null and b/resources/fluidbookpublication/flags/ma.png differ diff --git a/resources/fluidbookpublication/flags/mc.png b/resources/fluidbookpublication/flags/mc.png new file mode 100644 index 000000000..1aa830f12 Binary files /dev/null and b/resources/fluidbookpublication/flags/mc.png differ diff --git a/resources/fluidbookpublication/flags/md.png b/resources/fluidbookpublication/flags/md.png new file mode 100644 index 000000000..4e92c1890 Binary files /dev/null and b/resources/fluidbookpublication/flags/md.png differ diff --git a/resources/fluidbookpublication/flags/me.png b/resources/fluidbookpublication/flags/me.png new file mode 100644 index 000000000..ac7253558 Binary files /dev/null and b/resources/fluidbookpublication/flags/me.png differ diff --git a/resources/fluidbookpublication/flags/mg.png b/resources/fluidbookpublication/flags/mg.png new file mode 100644 index 000000000..d2715b3d0 Binary files /dev/null and b/resources/fluidbookpublication/flags/mg.png differ diff --git a/resources/fluidbookpublication/flags/mh.png b/resources/fluidbookpublication/flags/mh.png new file mode 100644 index 000000000..fb523a8c3 Binary files /dev/null and b/resources/fluidbookpublication/flags/mh.png differ diff --git a/resources/fluidbookpublication/flags/mk.png b/resources/fluidbookpublication/flags/mk.png new file mode 100644 index 000000000..db173aaff Binary files /dev/null and b/resources/fluidbookpublication/flags/mk.png differ diff --git a/resources/fluidbookpublication/flags/ml.png b/resources/fluidbookpublication/flags/ml.png new file mode 100644 index 000000000..2cec8ba44 Binary files /dev/null and b/resources/fluidbookpublication/flags/ml.png differ diff --git a/resources/fluidbookpublication/flags/mm.png b/resources/fluidbookpublication/flags/mm.png new file mode 100644 index 000000000..f464f67ff Binary files /dev/null and b/resources/fluidbookpublication/flags/mm.png differ diff --git a/resources/fluidbookpublication/flags/mn.png b/resources/fluidbookpublication/flags/mn.png new file mode 100644 index 000000000..9396355db Binary files /dev/null and b/resources/fluidbookpublication/flags/mn.png differ diff --git a/resources/fluidbookpublication/flags/mo.png b/resources/fluidbookpublication/flags/mo.png new file mode 100644 index 000000000..deb801dda Binary files /dev/null and b/resources/fluidbookpublication/flags/mo.png differ diff --git a/resources/fluidbookpublication/flags/mp.png b/resources/fluidbookpublication/flags/mp.png new file mode 100644 index 000000000..298d588b1 Binary files /dev/null and b/resources/fluidbookpublication/flags/mp.png differ diff --git a/resources/fluidbookpublication/flags/mq.png b/resources/fluidbookpublication/flags/mq.png new file mode 100644 index 000000000..010143b38 Binary files /dev/null and b/resources/fluidbookpublication/flags/mq.png differ diff --git a/resources/fluidbookpublication/flags/mr.png b/resources/fluidbookpublication/flags/mr.png new file mode 100644 index 000000000..319546b10 Binary files /dev/null and b/resources/fluidbookpublication/flags/mr.png differ diff --git a/resources/fluidbookpublication/flags/ms.png b/resources/fluidbookpublication/flags/ms.png new file mode 100644 index 000000000..d4cbb433d Binary files /dev/null and b/resources/fluidbookpublication/flags/ms.png differ diff --git a/resources/fluidbookpublication/flags/mt.png b/resources/fluidbookpublication/flags/mt.png new file mode 100644 index 000000000..00af94871 Binary files /dev/null and b/resources/fluidbookpublication/flags/mt.png differ diff --git a/resources/fluidbookpublication/flags/mu.png b/resources/fluidbookpublication/flags/mu.png new file mode 100644 index 000000000..b7fdce1bd Binary files /dev/null and b/resources/fluidbookpublication/flags/mu.png differ diff --git a/resources/fluidbookpublication/flags/mv.png b/resources/fluidbookpublication/flags/mv.png new file mode 100644 index 000000000..5073d9ec4 Binary files /dev/null and b/resources/fluidbookpublication/flags/mv.png differ diff --git a/resources/fluidbookpublication/flags/mw.png b/resources/fluidbookpublication/flags/mw.png new file mode 100644 index 000000000..13886e9f8 Binary files /dev/null and b/resources/fluidbookpublication/flags/mw.png differ diff --git a/resources/fluidbookpublication/flags/mx.png b/resources/fluidbookpublication/flags/mx.png new file mode 100644 index 000000000..5bc58ab3e Binary files /dev/null and b/resources/fluidbookpublication/flags/mx.png differ diff --git a/resources/fluidbookpublication/flags/my.png b/resources/fluidbookpublication/flags/my.png new file mode 100644 index 000000000..9034cbab2 Binary files /dev/null and b/resources/fluidbookpublication/flags/my.png differ diff --git a/resources/fluidbookpublication/flags/mz.png b/resources/fluidbookpublication/flags/mz.png new file mode 100644 index 000000000..76405e063 Binary files /dev/null and b/resources/fluidbookpublication/flags/mz.png differ diff --git a/resources/fluidbookpublication/flags/na.png b/resources/fluidbookpublication/flags/na.png new file mode 100644 index 000000000..63358c67d Binary files /dev/null and b/resources/fluidbookpublication/flags/na.png differ diff --git a/resources/fluidbookpublication/flags/nc.png b/resources/fluidbookpublication/flags/nc.png new file mode 100644 index 000000000..2cad28378 Binary files /dev/null and b/resources/fluidbookpublication/flags/nc.png differ diff --git a/resources/fluidbookpublication/flags/ne.png b/resources/fluidbookpublication/flags/ne.png new file mode 100644 index 000000000..d85f424f3 Binary files /dev/null and b/resources/fluidbookpublication/flags/ne.png differ diff --git a/resources/fluidbookpublication/flags/nf.png b/resources/fluidbookpublication/flags/nf.png new file mode 100644 index 000000000..f9bcdda12 Binary files /dev/null and b/resources/fluidbookpublication/flags/nf.png differ diff --git a/resources/fluidbookpublication/flags/ng.png b/resources/fluidbookpublication/flags/ng.png new file mode 100644 index 000000000..3eea2e020 Binary files /dev/null and b/resources/fluidbookpublication/flags/ng.png differ diff --git a/resources/fluidbookpublication/flags/ni.png b/resources/fluidbookpublication/flags/ni.png new file mode 100644 index 000000000..3969aaaae Binary files /dev/null and b/resources/fluidbookpublication/flags/ni.png differ diff --git a/resources/fluidbookpublication/flags/nl.png b/resources/fluidbookpublication/flags/nl.png new file mode 100644 index 000000000..fe44791e3 Binary files /dev/null and b/resources/fluidbookpublication/flags/nl.png differ diff --git a/resources/fluidbookpublication/flags/no.png b/resources/fluidbookpublication/flags/no.png new file mode 100644 index 000000000..160b6b5b7 Binary files /dev/null and b/resources/fluidbookpublication/flags/no.png differ diff --git a/resources/fluidbookpublication/flags/np.png b/resources/fluidbookpublication/flags/np.png new file mode 100644 index 000000000..aeb058b7e Binary files /dev/null and b/resources/fluidbookpublication/flags/np.png differ diff --git a/resources/fluidbookpublication/flags/nr.png b/resources/fluidbookpublication/flags/nr.png new file mode 100644 index 000000000..705fc337c Binary files /dev/null and b/resources/fluidbookpublication/flags/nr.png differ diff --git a/resources/fluidbookpublication/flags/nu.png b/resources/fluidbookpublication/flags/nu.png new file mode 100644 index 000000000..c3ce4aedd Binary files /dev/null and b/resources/fluidbookpublication/flags/nu.png differ diff --git a/resources/fluidbookpublication/flags/nz.png b/resources/fluidbookpublication/flags/nz.png new file mode 100644 index 000000000..10d6306d1 Binary files /dev/null and b/resources/fluidbookpublication/flags/nz.png differ diff --git a/resources/fluidbookpublication/flags/om.png b/resources/fluidbookpublication/flags/om.png new file mode 100644 index 000000000..2ffba7e8c Binary files /dev/null and b/resources/fluidbookpublication/flags/om.png differ diff --git a/resources/fluidbookpublication/flags/pa.png b/resources/fluidbookpublication/flags/pa.png new file mode 100644 index 000000000..9b2ee9a78 Binary files /dev/null and b/resources/fluidbookpublication/flags/pa.png differ diff --git a/resources/fluidbookpublication/flags/pe.png b/resources/fluidbookpublication/flags/pe.png new file mode 100644 index 000000000..62a04977f Binary files /dev/null and b/resources/fluidbookpublication/flags/pe.png differ diff --git a/resources/fluidbookpublication/flags/pf.png b/resources/fluidbookpublication/flags/pf.png new file mode 100644 index 000000000..771a0f652 Binary files /dev/null and b/resources/fluidbookpublication/flags/pf.png differ diff --git a/resources/fluidbookpublication/flags/pg.png b/resources/fluidbookpublication/flags/pg.png new file mode 100644 index 000000000..10d623349 Binary files /dev/null and b/resources/fluidbookpublication/flags/pg.png differ diff --git a/resources/fluidbookpublication/flags/ph.png b/resources/fluidbookpublication/flags/ph.png new file mode 100644 index 000000000..b89e15935 Binary files /dev/null and b/resources/fluidbookpublication/flags/ph.png differ diff --git a/resources/fluidbookpublication/flags/pk.png b/resources/fluidbookpublication/flags/pk.png new file mode 100644 index 000000000..e9df70ca4 Binary files /dev/null and b/resources/fluidbookpublication/flags/pk.png differ diff --git a/resources/fluidbookpublication/flags/pl.png b/resources/fluidbookpublication/flags/pl.png new file mode 100644 index 000000000..d413d010b Binary files /dev/null and b/resources/fluidbookpublication/flags/pl.png differ diff --git a/resources/fluidbookpublication/flags/pm.png b/resources/fluidbookpublication/flags/pm.png new file mode 100644 index 000000000..ba91d2c7a Binary files /dev/null and b/resources/fluidbookpublication/flags/pm.png differ diff --git a/resources/fluidbookpublication/flags/pn.png b/resources/fluidbookpublication/flags/pn.png new file mode 100644 index 000000000..aa9344f57 Binary files /dev/null and b/resources/fluidbookpublication/flags/pn.png differ diff --git a/resources/fluidbookpublication/flags/pr.png b/resources/fluidbookpublication/flags/pr.png new file mode 100644 index 000000000..82d9130da Binary files /dev/null and b/resources/fluidbookpublication/flags/pr.png differ diff --git a/resources/fluidbookpublication/flags/ps.png b/resources/fluidbookpublication/flags/ps.png new file mode 100644 index 000000000..f5f547762 Binary files /dev/null and b/resources/fluidbookpublication/flags/ps.png differ diff --git a/resources/fluidbookpublication/flags/pt.png b/resources/fluidbookpublication/flags/pt.png new file mode 100644 index 000000000..ece798015 Binary files /dev/null and b/resources/fluidbookpublication/flags/pt.png differ diff --git a/resources/fluidbookpublication/flags/pw.png b/resources/fluidbookpublication/flags/pw.png new file mode 100644 index 000000000..6178b254a Binary files /dev/null and b/resources/fluidbookpublication/flags/pw.png differ diff --git a/resources/fluidbookpublication/flags/py.png b/resources/fluidbookpublication/flags/py.png new file mode 100644 index 000000000..cb8723c06 Binary files /dev/null and b/resources/fluidbookpublication/flags/py.png differ diff --git a/resources/fluidbookpublication/flags/qa.png b/resources/fluidbookpublication/flags/qa.png new file mode 100644 index 000000000..ed4c621fa Binary files /dev/null and b/resources/fluidbookpublication/flags/qa.png differ diff --git a/resources/fluidbookpublication/flags/re.png b/resources/fluidbookpublication/flags/re.png new file mode 100644 index 000000000..8332c4ec2 Binary files /dev/null and b/resources/fluidbookpublication/flags/re.png differ diff --git a/resources/fluidbookpublication/flags/ro.png b/resources/fluidbookpublication/flags/ro.png new file mode 100644 index 000000000..57e74a651 Binary files /dev/null and b/resources/fluidbookpublication/flags/ro.png differ diff --git a/resources/fluidbookpublication/flags/rs.png b/resources/fluidbookpublication/flags/rs.png new file mode 100644 index 000000000..9439a5b60 Binary files /dev/null and b/resources/fluidbookpublication/flags/rs.png differ diff --git a/resources/fluidbookpublication/flags/ru.png b/resources/fluidbookpublication/flags/ru.png new file mode 100644 index 000000000..47da4214f Binary files /dev/null and b/resources/fluidbookpublication/flags/ru.png differ diff --git a/resources/fluidbookpublication/flags/rw.png b/resources/fluidbookpublication/flags/rw.png new file mode 100644 index 000000000..535649178 Binary files /dev/null and b/resources/fluidbookpublication/flags/rw.png differ diff --git a/resources/fluidbookpublication/flags/sa.png b/resources/fluidbookpublication/flags/sa.png new file mode 100644 index 000000000..b4641c7e8 Binary files /dev/null and b/resources/fluidbookpublication/flags/sa.png differ diff --git a/resources/fluidbookpublication/flags/sb.png b/resources/fluidbookpublication/flags/sb.png new file mode 100644 index 000000000..a9937ccf0 Binary files /dev/null and b/resources/fluidbookpublication/flags/sb.png differ diff --git a/resources/fluidbookpublication/flags/sc.png b/resources/fluidbookpublication/flags/sc.png new file mode 100644 index 000000000..39ee37184 Binary files /dev/null and b/resources/fluidbookpublication/flags/sc.png differ diff --git a/resources/fluidbookpublication/flags/scotland.png b/resources/fluidbookpublication/flags/scotland.png new file mode 100644 index 000000000..a0e57b412 Binary files /dev/null and b/resources/fluidbookpublication/flags/scotland.png differ diff --git a/resources/fluidbookpublication/flags/sd.png b/resources/fluidbookpublication/flags/sd.png new file mode 100644 index 000000000..eaab69eb7 Binary files /dev/null and b/resources/fluidbookpublication/flags/sd.png differ diff --git a/resources/fluidbookpublication/flags/se.png b/resources/fluidbookpublication/flags/se.png new file mode 100644 index 000000000..1994653da Binary files /dev/null and b/resources/fluidbookpublication/flags/se.png differ diff --git a/resources/fluidbookpublication/flags/sg.png b/resources/fluidbookpublication/flags/sg.png new file mode 100644 index 000000000..dd34d6121 Binary files /dev/null and b/resources/fluidbookpublication/flags/sg.png differ diff --git a/resources/fluidbookpublication/flags/sh.png b/resources/fluidbookpublication/flags/sh.png new file mode 100644 index 000000000..4b1d2a291 Binary files /dev/null and b/resources/fluidbookpublication/flags/sh.png differ diff --git a/resources/fluidbookpublication/flags/si.png b/resources/fluidbookpublication/flags/si.png new file mode 100644 index 000000000..bb1476ff5 Binary files /dev/null and b/resources/fluidbookpublication/flags/si.png differ diff --git a/resources/fluidbookpublication/flags/sj.png b/resources/fluidbookpublication/flags/sj.png new file mode 100644 index 000000000..160b6b5b7 Binary files /dev/null and b/resources/fluidbookpublication/flags/sj.png differ diff --git a/resources/fluidbookpublication/flags/sk.png b/resources/fluidbookpublication/flags/sk.png new file mode 100644 index 000000000..7ccbc8274 Binary files /dev/null and b/resources/fluidbookpublication/flags/sk.png differ diff --git a/resources/fluidbookpublication/flags/sl.png b/resources/fluidbookpublication/flags/sl.png new file mode 100644 index 000000000..12d812d29 Binary files /dev/null and b/resources/fluidbookpublication/flags/sl.png differ diff --git a/resources/fluidbookpublication/flags/sm.png b/resources/fluidbookpublication/flags/sm.png new file mode 100644 index 000000000..3df2fdcf8 Binary files /dev/null and b/resources/fluidbookpublication/flags/sm.png differ diff --git a/resources/fluidbookpublication/flags/sn.png b/resources/fluidbookpublication/flags/sn.png new file mode 100644 index 000000000..eabb71db4 Binary files /dev/null and b/resources/fluidbookpublication/flags/sn.png differ diff --git a/resources/fluidbookpublication/flags/so.png b/resources/fluidbookpublication/flags/so.png new file mode 100644 index 000000000..4a1ea4b29 Binary files /dev/null and b/resources/fluidbookpublication/flags/so.png differ diff --git a/resources/fluidbookpublication/flags/sr.png b/resources/fluidbookpublication/flags/sr.png new file mode 100644 index 000000000..5eff9271d Binary files /dev/null and b/resources/fluidbookpublication/flags/sr.png differ diff --git a/resources/fluidbookpublication/flags/st.png b/resources/fluidbookpublication/flags/st.png new file mode 100644 index 000000000..2978557b1 Binary files /dev/null and b/resources/fluidbookpublication/flags/st.png differ diff --git a/resources/fluidbookpublication/flags/sv.png b/resources/fluidbookpublication/flags/sv.png new file mode 100644 index 000000000..24987990b Binary files /dev/null and b/resources/fluidbookpublication/flags/sv.png differ diff --git a/resources/fluidbookpublication/flags/sy.png b/resources/fluidbookpublication/flags/sy.png new file mode 100644 index 000000000..f5ce30dcb Binary files /dev/null and b/resources/fluidbookpublication/flags/sy.png differ diff --git a/resources/fluidbookpublication/flags/sz.png b/resources/fluidbookpublication/flags/sz.png new file mode 100644 index 000000000..914ee861d Binary files /dev/null and b/resources/fluidbookpublication/flags/sz.png differ diff --git a/resources/fluidbookpublication/flags/tc.png b/resources/fluidbookpublication/flags/tc.png new file mode 100644 index 000000000..8fc1156be Binary files /dev/null and b/resources/fluidbookpublication/flags/tc.png differ diff --git a/resources/fluidbookpublication/flags/td.png b/resources/fluidbookpublication/flags/td.png new file mode 100644 index 000000000..667f21fd9 Binary files /dev/null and b/resources/fluidbookpublication/flags/td.png differ diff --git a/resources/fluidbookpublication/flags/tf.png b/resources/fluidbookpublication/flags/tf.png new file mode 100644 index 000000000..80529a436 Binary files /dev/null and b/resources/fluidbookpublication/flags/tf.png differ diff --git a/resources/fluidbookpublication/flags/tg.png b/resources/fluidbookpublication/flags/tg.png new file mode 100644 index 000000000..3aa00ad4d Binary files /dev/null and b/resources/fluidbookpublication/flags/tg.png differ diff --git a/resources/fluidbookpublication/flags/th.png b/resources/fluidbookpublication/flags/th.png new file mode 100644 index 000000000..dd8ba9171 Binary files /dev/null and b/resources/fluidbookpublication/flags/th.png differ diff --git a/resources/fluidbookpublication/flags/tj.png b/resources/fluidbookpublication/flags/tj.png new file mode 100644 index 000000000..617bf6455 Binary files /dev/null and b/resources/fluidbookpublication/flags/tj.png differ diff --git a/resources/fluidbookpublication/flags/tk.png b/resources/fluidbookpublication/flags/tk.png new file mode 100644 index 000000000..67b8c8cb5 Binary files /dev/null and b/resources/fluidbookpublication/flags/tk.png differ diff --git a/resources/fluidbookpublication/flags/tl.png b/resources/fluidbookpublication/flags/tl.png new file mode 100644 index 000000000..77da181e9 Binary files /dev/null and b/resources/fluidbookpublication/flags/tl.png differ diff --git a/resources/fluidbookpublication/flags/tm.png b/resources/fluidbookpublication/flags/tm.png new file mode 100644 index 000000000..828020ecd Binary files /dev/null and b/resources/fluidbookpublication/flags/tm.png differ diff --git a/resources/fluidbookpublication/flags/tn.png b/resources/fluidbookpublication/flags/tn.png new file mode 100644 index 000000000..183cdd3dc Binary files /dev/null and b/resources/fluidbookpublication/flags/tn.png differ diff --git a/resources/fluidbookpublication/flags/to.png b/resources/fluidbookpublication/flags/to.png new file mode 100644 index 000000000..f89b8ba75 Binary files /dev/null and b/resources/fluidbookpublication/flags/to.png differ diff --git a/resources/fluidbookpublication/flags/tr.png b/resources/fluidbookpublication/flags/tr.png new file mode 100644 index 000000000..be32f77e9 Binary files /dev/null and b/resources/fluidbookpublication/flags/tr.png differ diff --git a/resources/fluidbookpublication/flags/tt.png b/resources/fluidbookpublication/flags/tt.png new file mode 100644 index 000000000..2a11c1e20 Binary files /dev/null and b/resources/fluidbookpublication/flags/tt.png differ diff --git a/resources/fluidbookpublication/flags/tv.png b/resources/fluidbookpublication/flags/tv.png new file mode 100644 index 000000000..28274c5fb Binary files /dev/null and b/resources/fluidbookpublication/flags/tv.png differ diff --git a/resources/fluidbookpublication/flags/tw.png b/resources/fluidbookpublication/flags/tw.png new file mode 100644 index 000000000..f31c654c9 Binary files /dev/null and b/resources/fluidbookpublication/flags/tw.png differ diff --git a/resources/fluidbookpublication/flags/tz.png b/resources/fluidbookpublication/flags/tz.png new file mode 100644 index 000000000..c00ff7961 Binary files /dev/null and b/resources/fluidbookpublication/flags/tz.png differ diff --git a/resources/fluidbookpublication/flags/ua.png b/resources/fluidbookpublication/flags/ua.png new file mode 100644 index 000000000..09563a219 Binary files /dev/null and b/resources/fluidbookpublication/flags/ua.png differ diff --git a/resources/fluidbookpublication/flags/ug.png b/resources/fluidbookpublication/flags/ug.png new file mode 100644 index 000000000..33f4affad Binary files /dev/null and b/resources/fluidbookpublication/flags/ug.png differ diff --git a/resources/fluidbookpublication/flags/um.png b/resources/fluidbookpublication/flags/um.png new file mode 100644 index 000000000..c1dd9654b Binary files /dev/null and b/resources/fluidbookpublication/flags/um.png differ diff --git a/resources/fluidbookpublication/flags/us.png b/resources/fluidbookpublication/flags/us.png new file mode 100644 index 000000000..10f451fe8 Binary files /dev/null and b/resources/fluidbookpublication/flags/us.png differ diff --git a/resources/fluidbookpublication/flags/uy.png b/resources/fluidbookpublication/flags/uy.png new file mode 100644 index 000000000..31d948a06 Binary files /dev/null and b/resources/fluidbookpublication/flags/uy.png differ diff --git a/resources/fluidbookpublication/flags/uz.png b/resources/fluidbookpublication/flags/uz.png new file mode 100644 index 000000000..fef5dc170 Binary files /dev/null and b/resources/fluidbookpublication/flags/uz.png differ diff --git a/resources/fluidbookpublication/flags/va.png b/resources/fluidbookpublication/flags/va.png new file mode 100644 index 000000000..b31eaf225 Binary files /dev/null and b/resources/fluidbookpublication/flags/va.png differ diff --git a/resources/fluidbookpublication/flags/vc.png b/resources/fluidbookpublication/flags/vc.png new file mode 100644 index 000000000..8fa17b061 Binary files /dev/null and b/resources/fluidbookpublication/flags/vc.png differ diff --git a/resources/fluidbookpublication/flags/ve.png b/resources/fluidbookpublication/flags/ve.png new file mode 100644 index 000000000..00c90f9af Binary files /dev/null and b/resources/fluidbookpublication/flags/ve.png differ diff --git a/resources/fluidbookpublication/flags/vg.png b/resources/fluidbookpublication/flags/vg.png new file mode 100644 index 000000000..415690798 Binary files /dev/null and b/resources/fluidbookpublication/flags/vg.png differ diff --git a/resources/fluidbookpublication/flags/vi.png b/resources/fluidbookpublication/flags/vi.png new file mode 100644 index 000000000..ed26915a3 Binary files /dev/null and b/resources/fluidbookpublication/flags/vi.png differ diff --git a/resources/fluidbookpublication/flags/vn.png b/resources/fluidbookpublication/flags/vn.png new file mode 100644 index 000000000..ec7cd48a3 Binary files /dev/null and b/resources/fluidbookpublication/flags/vn.png differ diff --git a/resources/fluidbookpublication/flags/vu.png b/resources/fluidbookpublication/flags/vu.png new file mode 100644 index 000000000..b3397bc63 Binary files /dev/null and b/resources/fluidbookpublication/flags/vu.png differ diff --git a/resources/fluidbookpublication/flags/wales.png b/resources/fluidbookpublication/flags/wales.png new file mode 100644 index 000000000..e0d7cee11 Binary files /dev/null and b/resources/fluidbookpublication/flags/wales.png differ diff --git a/resources/fluidbookpublication/flags/wf.png b/resources/fluidbookpublication/flags/wf.png new file mode 100644 index 000000000..9f9558734 Binary files /dev/null and b/resources/fluidbookpublication/flags/wf.png differ diff --git a/resources/fluidbookpublication/flags/ws.png b/resources/fluidbookpublication/flags/ws.png new file mode 100644 index 000000000..c16950802 Binary files /dev/null and b/resources/fluidbookpublication/flags/ws.png differ diff --git a/resources/fluidbookpublication/flags/ye.png b/resources/fluidbookpublication/flags/ye.png new file mode 100644 index 000000000..468dfad03 Binary files /dev/null and b/resources/fluidbookpublication/flags/ye.png differ diff --git a/resources/fluidbookpublication/flags/yt.png b/resources/fluidbookpublication/flags/yt.png new file mode 100644 index 000000000..c298f378b Binary files /dev/null and b/resources/fluidbookpublication/flags/yt.png differ diff --git a/resources/fluidbookpublication/flags/za.png b/resources/fluidbookpublication/flags/za.png new file mode 100644 index 000000000..57c58e211 Binary files /dev/null and b/resources/fluidbookpublication/flags/za.png differ diff --git a/resources/fluidbookpublication/flags/zm.png b/resources/fluidbookpublication/flags/zm.png new file mode 100644 index 000000000..c25b07bee Binary files /dev/null and b/resources/fluidbookpublication/flags/zm.png differ diff --git a/resources/fluidbookpublication/flags/zw.png b/resources/fluidbookpublication/flags/zw.png new file mode 100644 index 000000000..53c97259b Binary files /dev/null and b/resources/fluidbookpublication/flags/zw.png differ