closes #2165: license icon on book page
authorRadek Czajka <radoslaw.czajka@nowoczesnapolska.org.pl>
Tue, 12 Jun 2012 09:54:40 +0000 (11:54 +0200)
committerRadek Czajka <radoslaw.czajka@nowoczesnapolska.org.pl>
Tue, 12 Jun 2012 09:55:50 +0000 (11:55 +0200)
apps/catalogue/constants.py [new file with mode: 0755]
apps/catalogue/templates/catalogue/book_mini_box.html
apps/catalogue/templates/catalogue/book_short.html
apps/catalogue/templates/catalogue/book_wide.html
apps/catalogue/templates/catalogue/snippets/license_icon.html [new file with mode: 0755]
apps/catalogue/templatetags/catalogue_tags.py
apps/reporting/templates/reporting/main.html
apps/reporting/views.py
apps/wolnelektury_core/static/css/book_box.css
apps/wolnelektury_core/static/img/licenses/cc-by-sa.png [new file with mode: 0644]
apps/wolnelektury_core/static/img/licenses/cc-by-sa.svg [new file with mode: 0644]

diff --git a/apps/catalogue/constants.py b/apps/catalogue/constants.py
new file mode 100755 (executable)
index 0000000..e1c92f8
--- /dev/null
@@ -0,0 +1,12 @@
+# -*- coding: utf-8 -*-
+# This file is part of Wolnelektury, licensed under GNU Affero GPLv3 or later.
+# Copyright © Fundacja Nowoczesna Polska. See NOTICE for more information.
+#
+from django.utils.translation import ugettext_lazy as _
+
+LICENSES = {
+    'http://creativecommons.org/licenses/by-sa/3.0/': {
+        'icon': 'cc-by-sa',
+        'description': _('Creative Commons Attribution-ShareAlike 3.0 Unported'),
+    },
+}
index 830c08e..731a8d3 100755 (executable)
@@ -8,7 +8,7 @@
                 {% empty %}
                     {{ book.cover.url }}
                 {% endthumbnail %}
-            " alt="Cover" />
+            " alt="Cover" class="cover" />
         {% endif %}
         <div class="desc">
             <span class="mono author">
index 6942bc4..f0d0ca5 100644 (file)
@@ -5,18 +5,23 @@
 <div class="book-box-inner" style="position: relative;">
 
 
-    {% if main_link %}<a href="{{ main_link }}">{% endif %}
-        {% if book.cover %}
+<div class="cover-area">
+    {% if book.cover %}
+        {% if main_link %}<a href="{{ main_link }}">{% endif %}
             <img src="
                 {% thumbnail book.cover "139x193" as thumb %}
                     {{ thumb.url }}
                 {% empty %}
                     {{ book.cover.url }}
                 {% endthumbnail %}
-            " alt="Cover" />
-        {% endif %}
-    {% if main_link %}</a>{% endif %}
-    <div class="book-box-body">
+            " alt="Cover" class="cover" />
+        {% if main_link %}</a>{% endif %}
+    {% endif %}
+    {% block cover-area-extra %}{% endblock %}
+</div>
+
+
+<div class="book-box-body">
 
 
 <div class="star {% if not request.user|likes:book %}un{% endif %}like">
index 8d83413..0e52019 100644 (file)
@@ -1,12 +1,20 @@
 {% extends "catalogue/book_short.html" %}
 {% load i18n %}
-{% load download_audio tag_list custom_pdf_link_li from catalogue_tags %}
+{% load download_audio tag_list custom_pdf_link_li license_icon from catalogue_tags %}
 {% load cite_promo from social_tags %}
 
 
 {% block box-class %}book-wide-box{% endblock %}
 
 
+{% block cover-area-extra %}
+{% if extra_info.license %}
+    {% license_icon extra_info.license %}
+{% endif %}
+{% endblock %}
+
+
+
 {% block book-box-extra-info %}
 {% if themes %}
     <div class="hidden-box-wrapper" id="theme-list-wrapper">
diff --git a/apps/catalogue/templates/catalogue/snippets/license_icon.html b/apps/catalogue/templates/catalogue/snippets/license_icon.html
new file mode 100755 (executable)
index 0000000..732e3bf
--- /dev/null
@@ -0,0 +1,10 @@
+{% load i18n %}
+{% load static from staticfiles %}
+
+{% if license_url %}
+<a class="license-icon" href="{{ license_url }}"
+    title="{% trans "Free license" %}: {{ license_description }}">
+    <img src="{% static icon %}"
+        alt="{% trans "Free license" %}: {{ license_description }}" />
+</a>
+{% endif %}
index 139aa54..ad60962 100644 (file)
@@ -15,6 +15,7 @@ from django.utils.translation import ugettext as _
 
 from catalogue.utils import split_tags
 from catalogue.models import Book, BookMedia, Fragment, Tag
+from catalogue.constants import LICENSES
 
 register = template.Library()
 
@@ -436,3 +437,16 @@ def custom_pdf_link_li(book):
         'book': book,
         'NO_CUSTOM_PDF': settings.NO_CUSTOM_PDF,
     }
+
+
+@register.inclusion_tag("catalogue/snippets/license_icon.html")
+def license_icon(license_url):
+    """Creates a license icon, if the license_url is known."""
+    known = LICENSES.get(license_url)
+    if known is None:
+        return {}
+    return {
+        "license_url": license_url,
+        "icon": "img/licenses/%s.png" % known['icon'],
+        "license_description": known['description'],
+    }
index 485610d..46d49c9 100755 (executable)
@@ -12,6 +12,8 @@
 
     <div class="normal-text">
 
+    <h3>Audiobooki</h3>
+
     <table class="stats">
         <tr><th>Utwory</th></tr>
         <tr><td>Utwory:</td><td>{% count_books %}</td></tr>
         {% endfor %}
     </table>
 
+    <h3>Licencje</h3>
+    <ul>
+    {% for license, license_description in licenses %}
+        <li>{{ license }} ({{ license_description }})</li>
+    {% endfor %}
+    </ul>
+
+
     </div>
 
 {% endblock %}
index 961a682..a23252e 100644 (file)
@@ -30,6 +30,9 @@ def stats_page(request):
         else:
             mt['deprecated'] = '-'
 
+    licenses = set(((b.extra_info.get('license'), b.extra_info.get('license_description'))
+        for b in Book.objects.all().iterator() if b.extra_info.get('license')))
+
     return render_to_response('reporting/main.html',
                 locals(), context_instance=RequestContext(request))
 
index e23847f..74b710a 100755 (executable)
 }
 */
 
-.book-mini-box img, .book-box img, .book-wide-box img, .search-result img {
+.book-mini-box img.cover,
+.book-box img.cover,
+.book-wide-box img.cover,
+.search-result img.cover {
     width: 13.9em;
     height: 19.3em;
 }
-.book-mini-box img {
+.book-mini-box img.cover {
     margin-bottom: 1.8em;
 }
-.book-box-inner img, .book-wide-box img {
+.book-box-inner .cover-area,
+.book-wide-box .cover-area
+{
     float: left;
     margin-right: 1.5em;
 }
@@ -283,6 +288,11 @@ ul.inline-items li {
 }
 
 
+.book-wide-box .license-icon {
+    display:block;
+    margin-top: .5em
+}
+
 
 .star {
     font-size: 2.25em;
diff --git a/apps/wolnelektury_core/static/img/licenses/cc-by-sa.png b/apps/wolnelektury_core/static/img/licenses/cc-by-sa.png
new file mode 100644 (file)
index 0000000..81977e8
Binary files /dev/null and b/apps/wolnelektury_core/static/img/licenses/cc-by-sa.png differ
diff --git a/apps/wolnelektury_core/static/img/licenses/cc-by-sa.svg b/apps/wolnelektury_core/static/img/licenses/cc-by-sa.svg
new file mode 100644 (file)
index 0000000..85199f2
--- /dev/null
@@ -0,0 +1,469 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+   xmlns:dc="http://purl.org/dc/elements/1.1/"
+   xmlns:cc="http://creativecommons.org/ns#"
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+   xmlns:svg="http://www.w3.org/2000/svg"
+   xmlns="http://www.w3.org/2000/svg"
+   xmlns:xlink="http://www.w3.org/1999/xlink"
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+   version="1.0"
+   width="651.2334"
+   height="150.00021"
+   id="svg1833"
+   sodipodi:version="0.32"
+   inkscape:version="0.48.2 r9819"
+   sodipodi:docname="CC-BY-SA.svg"
+   inkscape:output_extension="org.inkscape.output.svg.inkscape">
+  <metadata
+     id="metadata74">
+    <rdf:RDF>
+      <cc:Work
+         rdf:about="">
+        <dc:format>image/svg+xml</dc:format>
+        <dc:type
+           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+        <dc:title></dc:title>
+      </cc:Work>
+    </rdf:RDF>
+  </metadata>
+  <sodipodi:namedview
+     inkscape:window-height="941"
+     inkscape:window-width="1280"
+     inkscape:pageshadow="2"
+     inkscape:pageopacity="0.0"
+     guidetolerance="10.0"
+     gridtolerance="10.0"
+     objecttolerance="10.0"
+     borderopacity="1.0"
+     bordercolor="#666666"
+     pagecolor="#ffffff"
+     id="base"
+     showgrid="false"
+     inkscape:zoom="0.21950618"
+     inkscape:cx="322.59931"
+     inkscape:cy="295.52172"
+     inkscape:window-x="0"
+     inkscape:window-y="30"
+     inkscape:current-layer="svg1833"
+     fit-margin-top="0"
+     fit-margin-left="0"
+     fit-margin-right="0"
+     fit-margin-bottom="0"
+     inkscape:window-maximized="1" />
+  <defs
+     id="defs1835">
+    <linearGradient
+       id="linearGradient3117">
+      <stop
+         style="stop-color:#000000;stop-opacity:0"
+         offset="0"
+         id="stop3131" />
+      <stop
+         style="stop-color:#000000;stop-opacity:0.16494845"
+         offset="1"
+         id="stop3121" />
+    </linearGradient>
+    <linearGradient
+       x1="233.35068"
+       y1="303.90625"
+       x2="315.43057"
+       y2="303.90625"
+       id="linearGradient3123"
+       xlink:href="#linearGradient3117"
+       gradientUnits="userSpaceOnUse" />
+    <linearGradient
+       id="linearGradient15296">
+      <stop
+         style="stop-color:#ff5959;stop-opacity:1"
+         offset="0"
+         id="stop15298" />
+      <stop
+         style="stop-color:#df0000;stop-opacity:1"
+         offset="1"
+         id="stop15300" />
+    </linearGradient>
+    <linearGradient
+       id="linearGradient17969">
+      <stop
+         style="stop-color:#ffb73d;stop-opacity:1"
+         offset="0"
+         id="stop17971" />
+      <stop
+         style="stop-color:#ffa000;stop-opacity:1"
+         offset="1"
+         id="stop17973" />
+    </linearGradient>
+    <linearGradient
+       id="linearGradient18870">
+      <stop
+         style="stop-color:#fff18d;stop-opacity:1"
+         offset="0"
+         id="stop18872" />
+      <stop
+         style="stop-color:#ffcd01;stop-opacity:1"
+         offset="1"
+         id="stop18874" />
+    </linearGradient>
+    <linearGradient
+       id="linearGradient23319">
+      <stop
+         style="stop-color:#ffffff;stop-opacity:1"
+         offset="0"
+         id="stop23321" />
+      <stop
+         style="stop-color:#ffffff;stop-opacity:0"
+         offset="1"
+         id="stop23323" />
+    </linearGradient>
+    <linearGradient
+       id="linearGradient20648">
+      <stop
+         style="stop-color:#00a000;stop-opacity:0.25892857"
+         offset="0"
+         id="stop20650" />
+      <stop
+         style="stop-color:#008000;stop-opacity:1"
+         offset="1"
+         id="stop20652" />
+    </linearGradient>
+    <linearGradient
+       id="linearGradient21541">
+      <stop
+         style="stop-color:#263cce;stop-opacity:1"
+         offset="0"
+         id="stop21543" />
+      <stop
+         style="stop-color:#263cce;stop-opacity:0"
+         offset="1"
+         id="stop21545" />
+    </linearGradient>
+    <linearGradient
+       id="linearGradient25099">
+      <stop
+         style="stop-color:#652f99;stop-opacity:1"
+         offset="0"
+         id="stop25101" />
+      <stop
+         style="stop-color:#502679;stop-opacity:0.65178573"
+         offset="1"
+         id="stop25103" />
+    </linearGradient>
+    <linearGradient
+       x1="89"
+       y1="118"
+       x2="126"
+       y2="155"
+       id="linearGradient3400"
+       xlink:href="#linearGradient15296"
+       gradientUnits="userSpaceOnUse" />
+    <linearGradient
+       x1="89.626488"
+       y1="191.40311"
+       x2="126.02959"
+       y2="155"
+       id="linearGradient3402"
+       xlink:href="#linearGradient17969"
+       gradientUnits="userSpaceOnUse" />
+    <linearGradient
+       x1="157.68582"
+       y1="186.68582"
+       x2="126"
+       y2="155"
+       id="linearGradient3404"
+       xlink:href="#linearGradient18870"
+       gradientUnits="userSpaceOnUse" />
+    <linearGradient
+       x1="149.80643"
+       y1="178.80643"
+       x2="92.016411"
+       y2="121.01641"
+       id="linearGradient3406"
+       xlink:href="#linearGradient23319"
+       gradientUnits="userSpaceOnUse" />
+    <linearGradient
+       x1="91.149223"
+       y1="189.85078"
+       x2="126"
+       y2="155"
+       id="linearGradient3408"
+       xlink:href="#linearGradient20648"
+       gradientUnits="userSpaceOnUse" />
+    <linearGradient
+       x1="89"
+       y1="155"
+       x2="163"
+       y2="155"
+       id="linearGradient3410"
+       xlink:href="#linearGradient21541"
+       gradientUnits="userSpaceOnUse" />
+    <linearGradient
+       x1="126"
+       y1="155"
+       x2="57.340927"
+       y2="115.35966"
+       id="linearGradient3412"
+       xlink:href="#linearGradient25099"
+       gradientUnits="userSpaceOnUse" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3117"
+       id="linearGradient3103"
+       gradientUnits="userSpaceOnUse"
+       x1="233.35068"
+       y1="303.90625"
+       x2="315.43057"
+       y2="303.90625"
+       gradientTransform="matrix(10,0,0,10,-2333.5067,-2872.5692)" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient15296"
+       id="linearGradient3105"
+       gradientUnits="userSpaceOnUse"
+       x1="89"
+       y1="118"
+       x2="126"
+       y2="155" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient17969"
+       id="linearGradient3107"
+       gradientUnits="userSpaceOnUse"
+       x1="89.626488"
+       y1="191.40311"
+       x2="126.02959"
+       y2="155" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient18870"
+       id="linearGradient3109"
+       gradientUnits="userSpaceOnUse"
+       x1="157.68582"
+       y1="186.68582"
+       x2="126"
+       y2="155" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient23319"
+       id="linearGradient3111"
+       gradientUnits="userSpaceOnUse"
+       x1="149.80643"
+       y1="178.80643"
+       x2="92.016411"
+       y2="121.01641" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient20648"
+       id="linearGradient3113"
+       gradientUnits="userSpaceOnUse"
+       x1="91.149223"
+       y1="189.85078"
+       x2="126"
+       y2="155" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient21541"
+       id="linearGradient3115"
+       gradientUnits="userSpaceOnUse"
+       x1="89"
+       y1="155"
+       x2="163"
+       y2="155" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient25099"
+       id="linearGradient3118"
+       gradientUnits="userSpaceOnUse"
+       x1="126"
+       y1="155"
+       x2="57.340927"
+       y2="115.35966" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient15296"
+       id="linearGradient3181"
+       gradientUnits="userSpaceOnUse"
+       x1="89"
+       y1="118"
+       x2="126"
+       y2="155" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient17969"
+       id="linearGradient3183"
+       gradientUnits="userSpaceOnUse"
+       x1="89.626488"
+       y1="191.40311"
+       x2="126.02959"
+       y2="155" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient18870"
+       id="linearGradient3185"
+       gradientUnits="userSpaceOnUse"
+       x1="157.68582"
+       y1="186.68582"
+       x2="126"
+       y2="155" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient23319"
+       id="linearGradient3187"
+       gradientUnits="userSpaceOnUse"
+       x1="149.80643"
+       y1="178.80643"
+       x2="92.016411"
+       y2="121.01641" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient20648"
+       id="linearGradient3189"
+       gradientUnits="userSpaceOnUse"
+       x1="91.149223"
+       y1="189.85078"
+       x2="126"
+       y2="155" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient21541"
+       id="linearGradient3191"
+       gradientUnits="userSpaceOnUse"
+       x1="89"
+       y1="155"
+       x2="163"
+       y2="155" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient25099"
+       id="linearGradient3193"
+       gradientUnits="userSpaceOnUse"
+       x1="126"
+       y1="155"
+       x2="57.340927"
+       y2="115.35966" />
+  </defs>
+  <g
+     id="g3154"
+     transform="translate(2.8249999e-6,217.01365)">
+    <g
+       transform="matrix(0.69444443,0,0,0.69444443,-102.43055,-302.77748)"
+       id="g25107">
+      <path
+         inkscape:connector-curvature="0"
+         d="m 163,155 c 0,20.43454 -16.56546,37 -37,37 -20.43454,0 -37,-16.56546 -37,-37 0,-20.43454 16.56546,-37 37,-37 l 0,37 37,0 z"
+         transform="matrix(2.918919,0,0,2.918919,-112.2838,-220.9323)"
+         style="fill:url(#linearGradient3181);fill-opacity:1;fill-rule:nonzero;stroke:none"
+         id="path11693" />
+      <path
+         inkscape:connector-curvature="0"
+         d="m 163,155 c 0,20.43454 -16.56546,37 -37,37 -20.43454,0 -37,-16.56546 -37,-37 0,-20.43454 16.56546,-37 37,-37 l 0,37 37,0 z"
+         transform="matrix(0,2.501931,-2.501931,0,643.2993,-83.74315)"
+         style="fill:url(#linearGradient3183);fill-opacity:1;fill-rule:nonzero;stroke:none"
+         id="path10806" />
+      <path
+         inkscape:connector-curvature="0"
+         d="m 163,155 c 0,20.43454 -16.56546,37 -37,37 -20.43454,0 -37,-16.56546 -37,-37 0,-20.43454 16.56546,-37 37,-37 l 0,37 37,0 z"
+         transform="matrix(-2.084941,0,0,-2.084941,518.2029,554.6661)"
+         style="fill:url(#linearGradient3185);fill-opacity:1;fill-rule:nonzero;stroke:none"
+         id="path8149" />
+      <path
+         inkscape:connector-curvature="0"
+         d="m 163,155 c 0,20.43454 -16.56546,37 -37,37 -20.43454,0 -37,-16.56546 -37,-37 0,-20.43454 16.56546,-37 37,-37 l 0,37 37,0 z"
+         transform="matrix(0,-1.667952,1.667952,0,-3.032742,441.6625)"
+         style="fill:url(#linearGradient3187);fill-opacity:1;fill-rule:nonzero;stroke:none"
+         id="path13467" />
+      <path
+         inkscape:connector-curvature="0"
+         d="m 163,155 c 0,20.43454 -16.56546,37 -37,37 -20.43454,0 -37,-16.56546 -37,-37 0,-20.43454 16.56546,-37 37,-37 l 0,37 37,0 z"
+         transform="matrix(1.250965,0,0,1.250965,97.87857,37.60054)"
+         style="fill:url(#linearGradient3189);fill-opacity:1;fill-rule:nonzero;stroke:none"
+         id="path6377" />
+      <path
+         inkscape:connector-curvature="0"
+         d="m 163,155 c 0,20.43454 -16.56546,37 -37,37 -20.43454,0 -37,-16.56546 -37,-37 0,-20.43454 16.56546,-37 37,-37 l 0,37 37,0 z"
+         transform="matrix(0,0.833976,-0.833976,0,384.7666,127.0362)"
+         style="fill:url(#linearGradient3191);fill-opacity:1;fill-rule:nonzero;stroke:none"
+         id="path3654" />
+      <path
+         inkscape:connector-curvature="0"
+         d="m 163,155 c 0,20.43454 -16.56546,37 -37,37 -20.43454,0 -37,-16.56546 -37,-37 0,-20.43454 16.56546,-37 37,-37 20.43454,0 37,16.56546 37,37 z"
+         transform="matrix(-0.416988,0,0,-0.416988,308.0406,296.1335)"
+         style="fill:url(#linearGradient3193);fill-opacity:1;fill-rule:nonzero;stroke:none"
+         id="path3660" />
+    </g>
+    <g
+       id="g3877"
+       transform="matrix(10,0,0,10,-2483.3886,-3106.9654)">
+      <g
+         id="layer3"
+         style="display:inline"
+         transform="matrix(0.234375,0,0,0.234364,281.758,288.9959)">
+        <path
+           inkscape:connector-curvature="0"
+           id="path3742"
+           style="fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none"
+           d="M 31.1875,0 C 13.904525,0.43835438 0,14.612004 0,32 0,49.663996 14.336004,64 32,64 49.663996,64 64,49.663996 64,32 64,14.336004 49.663996,0 32,0 31.724,0 31.461833,-0.00695801 31.1875,0 z M 31.15625,5.5 C 31.439783,5.49101 31.714297,5.5 32,5.5 46.628003,5.4999998 58.5,17.371998 58.5,32 58.499998,46.628001 46.628002,58.5 32,58.5 17.371999,58.499999 5.5,46.628002 5.5,32 5.4999999,17.657701 16.922915,5.9512829 31.15625,5.5 z" />
+        <g
+           id="g6525">
+          <path
+             inkscape:connector-curvature="0"
+             id="path2838"
+             style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:none"
+             transform="translate(-0.0625,0.185547)"
+             d="m 36.6875,15.75 c 0,2.554317 -2.070683,4.625 -4.625,4.625 -2.554317,0 -4.625,-2.070683 -4.625,-4.625 0,-2.554317 2.070683,-4.625 4.625,-4.625 2.554317,0 4.625,2.070683 4.625,4.625 l 0,0 z" />
+          <path
+             inkscape:connector-curvature="0"
+             id="path3746"
+             style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:none"
+             d="m 27.215125,52.689453 9.56975,0 0,-15.378905 2.893008,0 c 0,0 -0.0011,-10.990367 0,-12.720111 -0.0028,-0.456306 0.04119,-1.365057 -0.620739,-2.026989 -0.661932,-0.661932 -1.555399,-0.621804 -2.02699,-0.620739 -0.47159,0.0011 -9.588717,0.0011 -10.060308,0 -0.471591,-0.0011 -1.365057,-0.04119 -2.026989,0.620739 -0.661933,0.661932 -0.617898,1.570683 -0.620739,2.026989 0.0011,1.729744 0,12.720111 0,12.720111 l 2.893007,0 0,15.378905 z" />
+        </g>
+      </g>
+      <g
+         id="g3561"
+         transform="matrix(0.236997,0,0,0.236675,265.0539,288.9952)">
+        <g
+           id="Background" />
+        <g
+           id="Guides" />
+        <g
+           id="Foreground">
+          <g
+             id="g3566">
+            <path
+               inkscape:connector-curvature="0"
+               id="path3568"
+               style="fill-rule:evenodd"
+               d="M 31.603,0 C 22.92,0 15.28,3.213 9.376,9.203 3.299,15.368 0,23.355 0,31.69 c 0,8.421 3.212,16.235 9.29,22.312 6.078,6.078 13.978,9.376 22.313,9.376 8.334,0 16.409,-3.299 22.66,-9.463 5.904,-5.817 9.029,-13.544 9.029,-22.226 0,-8.595 -3.125,-16.409 -9.116,-22.4 C 48.098,3.213 40.285,0 31.603,0 z m 0.086,5.73 c 7.12,0 13.458,2.691 18.406,7.64 4.862,4.862 7.466,11.287 7.466,18.319 0,7.119 -2.518,13.37 -7.379,18.146 -5.123,5.036 -11.721,7.727 -18.493,7.727 -6.858,0 -13.283,-2.691 -18.232,-7.64 C 8.508,44.973 5.73,38.462 5.73,31.69 5.73,24.831 8.508,18.32 13.457,13.284 18.319,8.335 24.57,5.73 31.689,5.73 z" />
+            <path
+               inkscape:connector-curvature="0"
+               id="path3570"
+               style="fill-rule:evenodd"
+               d="m 31.281,26.424 c -1.79,-3.264 -4.844,-4.563 -8.389,-4.563 -5.16,0 -9.267,3.65 -9.267,9.829 0,6.283 3.861,9.829 9.442,9.829 3.581,0 6.635,-1.966 8.319,-4.949 l -3.931,-2.001 c -0.878,2.106 -2.212,2.738 -3.896,2.738 -2.914,0 -4.248,-2.422 -4.248,-5.616 0,-3.194 1.124,-5.617 4.248,-5.617 0.842,0 2.527,0.457 3.51,2.562 l 4.212,-2.212 z" />
+            <path
+               inkscape:connector-curvature="0"
+               id="path3572"
+               style="fill-rule:evenodd"
+               d="m 49.562,26.424 c -1.79,-3.264 -4.844,-4.563 -8.389,-4.563 -5.16,0 -9.267,3.65 -9.267,9.829 0,6.283 3.861,9.829 9.443,9.829 3.58,0 6.634,-1.966 8.319,-4.949 l -3.931,-2.001 c -0.878,2.106 -2.211,2.738 -3.896,2.738 -2.914,0 -4.248,-2.422 -4.248,-5.616 0,-3.194 1.124,-5.617 4.248,-5.617 0.842,0 2.527,0.457 3.51,2.562 l 4.211,-2.212 z" />
+          </g>
+        </g>
+      </g>
+      <g
+         id="g3832"
+         transform="matrix(0.234375,0,0,0.234364,298.4622,288.9959)">
+        <path
+           inkscape:connector-curvature="0"
+           id="path1334"
+           style="fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none"
+           d="M 31.1875,0 C 13.904525,0.43835438 0,14.612004 0,32 0,49.663996 14.336004,64 32,64 49.663996,64 64,49.663996 64,32 64,14.336004 49.663996,0 32,0 31.724,0 31.461833,-0.00695801 31.1875,0 z M 31.15625,5.5 C 31.439783,5.49101 31.714297,5.5 32,5.5 46.628003,5.4999998 58.5,17.371998 58.5,32 58.499998,46.628001 46.628002,58.5 32,58.5 17.371999,58.499999 5.5,46.628002 5.5,32 5.4999999,17.657701 16.922915,5.9512829 31.15625,5.5 z" />
+        <path
+           inkscape:connector-curvature="0"
+           id="path2371"
+           style="fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none"
+           d="m 18.115779,26.784547 -2.740778,0 6.21875,6.96875 6.21875,-6.96875 -2.243852,0 c 0.486099,-3.3998 3.476871,-5.586425 6.931352,-5.3125 0.136556,0.01083 0.267854,0 0.40625,0 5.62743,0 7.84682,4.255865 8.03125,10.53125 0.19247,6.549199 -3.60349,10.620376 -8.03125,10.53125 -4.673386,-0.09221 -6.444049,-2.32751 -7.125,-5.71875 l -8.34375,0 c 1.373177,7.811231 7.123855,12.392036 15.28125,12.40625 9.23458,0.01625 15.906248,-7.709347 15.906248,-17.21875 0,-10.154893 -6.669368,-17.21875 -15.906248,-17.21875 -0.274244,0 -0.541652,-0.01489 -0.8125,0 -0.0656,0.0036 -0.12197,-0.0011 -0.1875,0 -5.772209,0.09597 -13.602929,4.139742 -13.602972,12 z" />
+      </g>
+    </g>
+  </g>
+</svg>