Compare commits

...

20 Commits

Author SHA1 Message Date
Andrew afba60f04c Theme names 2018-10-11 18:24:02 -07:00
Andrew 8fdde9d896 Scalybiz to 2.5.0 2018-10-11 18:24:02 -07:00
Andrew 86c3c69fd6 Scalybiz assets 2018-10-11 18:24:02 -07:00
Andrew 7208baf5bb Cybre light for 2.5.0 2018-10-11 18:24:02 -07:00
chr 6360645105 Cybrespace light theme 2018-10-11 18:24:02 -07:00
chr 271e37eb26 Base SCSS for cybrespace themes 2018-10-11 18:24:02 -07:00
nightpool 09d01aed7b fix bio length autosizing 2018-10-11 18:24:02 -07:00
Andrew 59762a2c6d Feature: increase bio length to 413 characters 2018-10-11 18:24:02 -07:00
Andrew 3de8c413b6 Hotlink twitter mentions
Differentiate twitter mentions from normal mentions
2018-10-11 18:24:02 -07:00
Eugen Rochko e8a4ba49cf Bump version to 2.5.2 2018-10-12 00:22:38 +02:00
Eugen Rochko 1787704e1c Improve signature verification safeguards (#8959)
* Downcase signed_headers string before building the signed string

The HTTP Signatures draft does not mandate the “headers” field to be downcased,
but mandates the header field names to be downcased in the signed string, which
means that prior to this patch, Mastodon could fail to process signatures from
some compliant clients. It also means that it would not actually check the
Digest of non-compliant clients that wouldn't use a lowercased Digest field
name.

Thankfully, I don't know of any such client.

* Revert "Remove dead code (#8919)"

This reverts commit a00ce8c92c.

* Restore time window checking, change it to 12 hours

By checking the Date header, we can prevent replaying old vulnerable
signatures. The focus is to prevent replaying old vulnerable requests
from software that has been fixed in the meantime, so a somewhat long
window should be fine and accounts for timezone misconfiguration.

* Escape users' URLs when formatting them

Fixes possible HTML injection

* Escape all string interpolations in Formatter class

Slightly improve performance by reducing class allocations
from repeated Formatter#encode calls

* Fix code style issues
2018-10-12 00:17:36 +02:00
Eugen Rochko 65662b3847 Bump version to 2.5.1 2018-10-07 20:13:54 +02:00
ThibG 6984396b11 Ensure only toots from the reported users are reported (#8916) 2018-10-07 19:46:15 +02:00
Eugen Rochko 485dc7d559 Add fallback for PostgreSQL without upsert in CopyStatusStats (#8903)
Fix #8590
2018-10-07 18:42:11 +02:00
dependabot[bot] a1b904441e Bump puma from 3.11.4 to 3.12.0 (#8883)
Bumps [puma](https://github.com/puma/puma) from 3.11.4 to 3.12.0.
- [Release notes](https://github.com/puma/puma/releases)
- [Changelog](https://github.com/puma/puma/blob/master/History.md)
- [Commits](https://github.com/puma/puma/compare/v3.11.4...v3.12.0)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-10-07 18:42:04 +02:00
dependabot[bot] 0d844c0780 [Security] Bump nokogiri from 1.8.4 to 1.8.5 (#8881)
Bumps [nokogiri](https://github.com/sparklemotion/nokogiri) from 1.8.4 to 1.8.5. **This update includes security fixes.**
- [Release notes](https://github.com/sparklemotion/nokogiri/releases)
- [Changelog](https://github.com/sparklemotion/nokogiri/blob/master/CHANGELOG.md)
- [Commits](https://github.com/sparklemotion/nokogiri/compare/v1.8.4...v1.8.5)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-10-07 18:40:49 +02:00
ThibG c2f31d908e Fix handling of ActivityPub activities lacking some attributes (#8864) 2018-10-07 18:40:31 +02:00
Yamagishi Kazutoshi 38a48a627c Fix that Rails.cache information could not be sent via StatsD (#8831) 2018-10-07 18:40:10 +02:00
Eugen Rochko 10f7278e9a Fix class autoloading issue in ActivityPub::Activity::Create (#8820) 2018-10-07 18:39:52 +02:00
ThibG 39e84d174d Unconditionally re-encode locally-uploaded images to strip metadata (#8714)
This strips metadata on file upload by re-encoding the files, at the cost
of possible slight image quality decrease and processing resources.
2018-10-07 18:37:22 +02:00
40 changed files with 4653 additions and 55 deletions

14
CHANGELOG.md Normal file
View File

@ -0,0 +1,14 @@
## 2.5.2
- Fix XSS vulnerability (#8959)
## 2.5.1
- Fix some local images not having their EXIF metadata stripped on upload (#8714)
- Fix class autoloading issue in ActivityPub Create handler (#8820)
- Fix cache statistics not being sent via statsd when statsd enabled (#8831)
- Fix being able to enable a disabled relay via ActivityPub Accept handler (#8864)
- Bump nokogiri from 1.8.4 to 1.8.5 (#8881)
- Bump puma from 3.11.4 to 3.12.0 (#8883)
- Fix database migrations for PostgreSQL below 9.5 (#8903)
- Fix being able to report statuses not belonging to the reported account (#8916)

View File

@ -5,7 +5,7 @@ ruby '>= 2.3.0', '< 2.6.0'
gem 'pkg-config', '~> 1.3'
gem 'puma', '~> 3.11'
gem 'puma', '~> 3.12'
gem 'rails', '~> 5.2.1'
gem 'thor', '~> 0.20'

View File

@ -347,7 +347,7 @@ GEM
net-ssh (>= 2.6.5)
net-ssh (4.2.0)
nio4r (2.3.1)
nokogiri (1.8.4)
nokogiri (1.8.5)
mini_portile2 (~> 2.3.0)
nokogumbo (1.5.0)
nokogiri
@ -412,7 +412,7 @@ GEM
pry-rails (0.3.6)
pry (>= 0.10.4)
public_suffix (3.0.2)
puma (3.11.4)
puma (3.12.0)
pundit (1.1.0)
activesupport (>= 3.0.0)
rack (2.0.5)
@ -721,7 +721,7 @@ DEPENDENCIES
private_address_check (~> 0.4.1)
pry-byebug (~> 3.6)
pry-rails (~> 0.3)
puma (~> 3.11)
puma (~> 3.12)
pundit (~> 1.1)
rack-attack (~> 5.2)
rack-cors (~> 1.0)
@ -765,4 +765,4 @@ RUBY VERSION
ruby 2.5.0p0
BUNDLED WITH
1.16.3
1.16.5

View File

@ -27,7 +27,7 @@ class Api::V1::ReportsController < Api::BaseController
private
def reported_status_ids
Status.find(status_ids).pluck(:id)
reported_account.statuses.find(status_ids).pluck(:id)
end
def status_ids

View File

@ -22,6 +22,12 @@ module SignatureVerification
return
end
if request.headers['Date'].present? && !matches_time_window?
@signature_verification_failure_reason = 'Signed request date outside acceptable time window'
@signed_request_account = nil
return
end
raw_signature = request.headers['Signature']
signature_params = {}
@ -76,7 +82,7 @@ module SignatureVerification
def build_signed_string(signed_headers)
signed_headers = 'date' if signed_headers.blank?
signed_headers.split(' ').map do |signed_header|
signed_headers.downcase.split(' ').map do |signed_header|
if signed_header == Request::REQUEST_TARGET
"#{Request::REQUEST_TARGET}: #{request.method.downcase} #{request.path}"
elsif signed_header == 'digest'
@ -89,12 +95,12 @@ module SignatureVerification
def matches_time_window?
begin
time_sent = DateTime.httpdate(request.headers['Date'])
time_sent = Time.httpdate(request.headers['Date'])
rescue ArgumentError
return false
end
(Time.now.utc - time_sent).abs <= 30
(Time.now.utc - time_sent).abs <= 12.hours
end
def body_digest

Binary file not shown.

After

Width:  |  Height:  |  Size: 223 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 11 KiB

After

Width:  |  Height:  |  Size: 182 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 966 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 786 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 149 KiB

View File

@ -1 +1,34 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 216.4144 232.00976"><path d="M211.80734 139.0875c-3.18125 16.36625-28.4925 34.2775-57.5625 37.74875-15.15875 1.80875-30.08375 3.47125-45.99875 2.74125-26.0275-1.1925-46.565-6.2125-46.565-6.2125 0 2.53375.15625 4.94625.46875 7.2025 3.38375 25.68625 25.47 27.225 46.39125 27.9425 21.11625.7225 39.91875-5.20625 39.91875-5.20625l.8675 19.09s-14.77 7.93125-41.08125 9.39c-14.50875.7975-32.52375-.365-53.50625-5.91875C9.23234 213.82 1.40609 165.31125.20859 116.09125c-.365-14.61375-.14-28.39375-.14-39.91875 0-50.33 32.97625-65.0825 32.97625-65.0825C49.67234 3.45375 78.20359.2425 107.86484 0h.72875c29.66125.2425 58.21125 3.45375 74.8375 11.09 0 0 32.975 14.7525 32.975 65.0825 0 0 .41375 37.13375-4.59875 62.915" fill="#3088d4"/><path d="M177.50984 80.077v60.94125h-24.14375v-59.15c0-12.46875-5.24625-18.7975-15.74-18.7975-11.6025 0-17.4175 7.5075-17.4175 22.3525v32.37625H96.20734V85.42325c0-14.845-5.81625-22.3525-17.41875-22.3525-10.49375 0-15.74 6.32875-15.74 18.7975v59.15H38.90484V80.077c0-12.455 3.17125-22.3525 9.54125-29.675 6.56875-7.3225 15.17125-11.07625 25.85-11.07625 12.355 0 21.71125 4.74875 27.8975 14.2475l6.01375 10.08125 6.015-10.08125c6.185-9.49875 15.54125-14.2475 27.8975-14.2475 10.6775 0 19.28 3.75375 25.85 11.07625 6.36875 7.3225 9.54 17.22 9.54 29.675" fill="#fff"/></svg>
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<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:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" width="61.076954mm" height="65.47831mm" viewBox="0 0 216.4144 232.00976" version="1.1" id="svg6" sodipodi:docname="logo.svg" inkscape:version="0.92.1 r">
<metadata id="metadata12">
<rdf:RDF>
<cc:Work rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type rdf:resource="http://purl.org/dc/dcmitype/StillImage"/>
</cc:Work>
</rdf:RDF>
</metadata>
<defs id="defs10"/>
<sodipodi:namedview pagecolor="#ffffff" bordercolor="#666666" borderopacity="1" objecttolerance="10" gridtolerance="10" guidetolerance="10" inkscape:pageopacity="0" inkscape:pageshadow="2" inkscape:window-width="1920" inkscape:window-height="1025" id="namedview8" showgrid="false" inkscape:zoom="1.2343371" inkscape:cx="104.83306" inkscape:cy="198.35849" inkscape:window-x="0" inkscape:window-y="27" inkscape:window-maximized="1" inkscape:current-layer="svg6"/>
<path sodipodi:type="star" style="fill:#813665;fill-opacity:1;stroke:#ffffff;stroke-width:1.45006359;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" id="path4512-36" sodipodi:sides="3" sodipodi:cx="104.39184" sodipodi:cy="89.757514" sodipodi:r1="24.934786" sodipodi:r2="12.467396" sodipodi:arg1="1.5707963" sodipodi:arg2="2.6179939" inkscape:flatsided="false" inkscape:rounded="0" inkscape:randomized="0" d="M 104.39184,114.6923 93.594756,95.991213 82.79768,77.290123 l 21.59416,-4e-6 21.59416,2e-6 -10.79708,18.701092 z" inkscape:transform-center-y="6.2336976" inkscape:transform-center-x="-3.15118e-06"/>
<path sodipodi:type="star" style="fill:#7e3972;fill-opacity:1;stroke:#ffffff;stroke-width:1.45006359;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" id="path4512-1" sodipodi:sides="3" sodipodi:cx="125.986" sodipodi:cy="-102.22491" sodipodi:r1="24.934784" sodipodi:r2="12.467396" sodipodi:arg1="1.5707963" sodipodi:arg2="2.6179939" inkscape:flatsided="false" inkscape:rounded="0" inkscape:randomized="0" d="m 125.986,-77.290123 -10.79708,-18.701086 -10.79708,-18.701091 21.59416,0 21.59416,0 -10.79708,18.701091 z" inkscape:transform-center-y="-6.23369" transform="scale(1,-1)" inkscape:transform-center-x="5.6624181e-06"/>
<path sodipodi:type="star" style="fill:#853252;fill-opacity:1;stroke:#ffffff;stroke-width:1.45006359;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" id="path4512-1-9" sodipodi:sides="3" sodipodi:cx="104.39184" sodipodi:cy="-64.822734" sodipodi:r1="24.934784" sodipodi:r2="12.467396" sodipodi:arg1="1.5707963" sodipodi:arg2="2.6179939" inkscape:flatsided="false" inkscape:rounded="0" inkscape:randomized="0" d="m 104.39184,-39.887947 -10.797084,-18.701086 -10.797075,-18.701089 21.594159,-5e-6 21.59415,3e-6 -10.79707,18.701091 z" inkscape:transform-center-y="-6.2336876" transform="scale(1,-1)" inkscape:transform-center-x="-3.15118e-06"/>
<path sodipodi:type="star" style="fill:#733e79;fill-opacity:1;stroke:#ffffff;stroke-width:1.45006359;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" id="path4512-0" sodipodi:sides="3" sodipodi:cx="125.986" sodipodi:cy="127.15968" sodipodi:r1="24.934784" sodipodi:r2="12.467396" sodipodi:arg1="1.5707963" sodipodi:arg2="2.6179939" inkscape:flatsided="false" inkscape:rounded="0" inkscape:randomized="0" d="m 125.986,152.09447 -10.79708,-18.70109 -10.79708,-18.70109 21.59416,0 21.59416,0 -10.79708,18.70109 z" inkscape:transform-center-y="6.2336887" inkscape:transform-center-x="5.6624181e-06"/>
<path sodipodi:type="star" style="fill:#5f4770;fill-opacity:1;stroke:#ffffff;stroke-width:1.45006359;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" id="path4512-0-6" sodipodi:sides="3" sodipodi:cx="104.39184" sodipodi:cy="164.56186" sodipodi:r1="24.934784" sodipodi:r2="12.467396" sodipodi:arg1="1.5707963" sodipodi:arg2="2.6179939" inkscape:flatsided="false" inkscape:rounded="0" inkscape:randomized="0" d="m 104.39184,189.49664 -10.797084,-18.70108 -10.797075,-18.70109 21.594159,-1e-5 21.59415,1e-5 -10.79707,18.70109 z" inkscape:transform-center-y="6.2336969" inkscape:transform-center-x="-3.15118e-06"/>
<path sodipodi:type="star" style="fill:#892e46;fill-opacity:1;stroke:#ffffff;stroke-width:1.45006359;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" id="path4512-7-7" sodipodi:sides="3" sodipodi:cx="125.986" sodipodi:cy="52.355334" sodipodi:r1="24.934784" sodipodi:r2="12.467396" sodipodi:arg1="1.5707963" sodipodi:arg2="2.6179939" inkscape:flatsided="false" inkscape:rounded="0" inkscape:randomized="0" d="m 125.986,77.290119 -10.79708,-18.701086 -10.79708,-18.701089 21.59416,-5e-6 21.59416,4e-6 -10.79708,18.70109 z" inkscape:transform-center-y="6.2336962" inkscape:transform-center-x="5.6624181e-06"/>
<path sodipodi:type="star" style="fill:#bd792b;fill-opacity:1;stroke:#ffffff;stroke-width:1.45006359;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" id="path4512-1-9-7" sodipodi:sides="3" sodipodi:cx="125.986" sodipodi:cy="-27.420535" sodipodi:r1="24.934784" sodipodi:r2="12.467396" sodipodi:arg1="1.5707963" sodipodi:arg2="2.6179939" inkscape:flatsided="false" inkscape:rounded="0" inkscape:randomized="0" d="m 125.986,-2.4857502 -10.79708,-18.7010858 -10.79708,-18.70109 21.59416,-4e-6 21.59416,3e-6 -10.79708,18.701091 z" inkscape:transform-center-y="-6.2336904" transform="scale(1,-1)" inkscape:transform-center-x="5.6624182e-06"/>
<path sodipodi:type="star" style="fill:#b77531;fill-opacity:1;stroke:#ffffff;stroke-width:1.45006359;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" id="path4512-7-4" sodipodi:sides="3" sodipodi:cx="82.797675" sodipodi:cy="52.355334" sodipodi:r1="24.934784" sodipodi:r2="12.467396" sodipodi:arg1="1.5707963" sodipodi:arg2="2.6179939" inkscape:flatsided="false" inkscape:rounded="0" inkscape:randomized="0" d="M 82.797677,77.290119 72.000594,58.589033 61.203519,39.887944 l 21.594157,-5e-6 21.594154,4e-6 -10.797073,18.70109 z" inkscape:transform-center-y="6.2336975" inkscape:transform-center-x="3.2040961e-06"/>
<path sodipodi:type="star" style="fill:#a85b31;fill-opacity:1;stroke:#ffffff;stroke-width:1.45006359;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" id="path4512-7-0" sodipodi:sides="3" sodipodi:cx="82.797668" sodipodi:cy="-102.2249" sodipodi:r1="24.934784" sodipodi:r2="12.467396" sodipodi:arg1="1.5707963" sodipodi:arg2="2.6179939" inkscape:flatsided="false" inkscape:rounded="0" inkscape:randomized="0" d="m 82.797669,-77.290115 -10.797082,-18.701087 -10.797075,-18.701088 21.594157,-1e-5 21.594151,1e-5 -10.79707,18.701089 z" inkscape:transform-center-y="-6.2336934" transform="scale(1,-1)"/>
<path sodipodi:type="star" style="fill:#564374;fill-opacity:1;stroke:#ffffff;stroke-width:1.45006359;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" id="path4512-1-5-4" sodipodi:sides="3" sodipodi:cx="125.986" sodipodi:cy="-177.0293" sodipodi:r1="24.934784" sodipodi:r2="12.467396" sodipodi:arg1="1.5707963" sodipodi:arg2="2.6179939" inkscape:flatsided="false" inkscape:rounded="0" inkscape:randomized="0" d="m 125.986,-152.09451 -10.79708,-18.70109 -10.79708,-18.70109 21.59416,0 21.59416,0 -10.79708,18.70109 z" inkscape:transform-center-y="-6.233687" transform="scale(1,-1)" inkscape:transform-center-x="5.6624182e-06"/>
<path sodipodi:type="star" style="fill:#8f2834;fill-opacity:1;stroke:#ffffff;stroke-width:1.45006359;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" id="path4512-1-5-4-7" sodipodi:sides="3" sodipodi:cx="147.58015" sodipodi:cy="-64.822723" sodipodi:r1="24.93478" sodipodi:r2="12.467396" sodipodi:arg1="1.5707963" sodipodi:arg2="2.6179939" inkscape:flatsided="false" inkscape:rounded="0" inkscape:randomized="0" d="m 147.58016,-39.887943 -10.79709,-18.701083 -10.79707,-18.701087 21.59415,-6e-6 21.59416,5e-6 -10.79707,18.701089 z" inkscape:transform-center-y="-6.2336898" transform="scale(1,-1)"/>
<path sodipodi:type="star" style="fill:#924433;fill-opacity:1;stroke:#ffffff;stroke-width:1.45006359;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" id="path4512-1-5-48" sodipodi:sides="3" sodipodi:cx="61.203517" sodipodi:cy="164.56186" sodipodi:r1="24.934784" sodipodi:r2="12.467396" sodipodi:arg1="1.5707963" sodipodi:arg2="2.6179939" inkscape:flatsided="false" inkscape:rounded="0" inkscape:randomized="0" d="m 61.203519,189.49664 -10.797083,-18.70108 -10.797075,-18.70109 21.594157,-1e-5 21.594156,1e-5 -10.797075,18.70109 z" inkscape:transform-center-y="6.2336903" inkscape:transform-center-x="2.8458428e-06"/>
<path sodipodi:type="star" style="fill:#513f62;fill-opacity:1;stroke:#ffffff;stroke-width:1.45006359;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" id="path4512-0-6-5" sodipodi:sides="3" sodipodi:cx="125.986" sodipodi:cy="201.96413" sodipodi:r1="24.934784" sodipodi:r2="12.467396" sodipodi:arg1="1.5707963" sodipodi:arg2="2.6179939" inkscape:flatsided="false" inkscape:rounded="0" inkscape:randomized="0" d="m 125.986,226.89891 -10.79708,-18.70109 -10.79708,-18.70108 21.59416,-10e-6 21.59416,0 -10.79708,18.70109 z" inkscape:transform-center-y="6.2337189" inkscape:transform-center-x="5.6624182e-06"/>
<path sodipodi:type="star" style="fill:#5e3f78;fill-opacity:1;stroke:#ffffff;stroke-width:1.45006359;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" id="path4512-0-8" sodipodi:sides="3" sodipodi:cx="147.58015" sodipodi:cy="164.56186" sodipodi:r1="24.934784" sodipodi:r2="12.467396" sodipodi:arg1="1.5707963" sodipodi:arg2="2.6179939" inkscape:flatsided="false" inkscape:rounded="0" inkscape:randomized="0" d="m 147.58016,189.49664 -10.79709,-18.70108 -10.79707,-18.70109 21.59415,-1e-5 21.59416,1e-5 -10.79707,18.70109 z" inkscape:transform-center-y="6.2336969" inkscape:transform-center-x="-1.4958869e-06"/>
<path sodipodi:type="star" style="fill:#674176;fill-opacity:1;stroke:#ffffff;stroke-width:1.45006359;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" id="path4512-1-5-2" sodipodi:sides="3" sodipodi:cx="147.58015" sodipodi:cy="-139.62709" sodipodi:r1="24.934784" sodipodi:r2="12.467396" sodipodi:arg1="1.5707963" sodipodi:arg2="2.6179939" inkscape:flatsided="false" inkscape:rounded="0" inkscape:randomized="0" d="m 147.58016,-114.69231 -10.79709,-18.70108 -10.79707,-18.70109 21.59415,-1e-5 21.59416,1e-5 -10.79707,18.70109 z" inkscape:transform-center-y="-6.2336967" transform="scale(1,-1)" inkscape:transform-center-x="-1.4958869e-06"/>
<path sodipodi:type="star" style="fill:#584070;fill-opacity:1;stroke:#ffffff;stroke-width:1.45006359;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" id="path4512-0-6-0" sodipodi:sides="3" sodipodi:cx="82.797675" sodipodi:cy="-177.02925" sodipodi:r1="24.934784" sodipodi:r2="12.467396" sodipodi:arg1="1.5707963" sodipodi:arg2="2.6179939" inkscape:flatsided="false" inkscape:rounded="0" inkscape:randomized="0" d="m 82.797677,-152.09447 -10.797083,-18.70108 -10.797075,-18.70109 21.594157,-10e-6 21.594154,10e-6 -10.797073,18.70109 z" inkscape:transform-center-y="-6.2337069" transform="scale(1,-1)" inkscape:transform-center-x="3.2040961e-06"/>
<path sodipodi:type="star" style="fill:#49376d;fill-opacity:1;stroke:#ffffff;stroke-width:1.45006359;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" id="path4512-0-6-6" sodipodi:sides="3" sodipodi:cx="82.797675" sodipodi:cy="201.96402" sodipodi:r1="24.934784" sodipodi:r2="12.467396" sodipodi:arg1="1.5707963" sodipodi:arg2="2.6179939" inkscape:flatsided="false" inkscape:rounded="0" inkscape:randomized="0" d="m 82.797677,226.8988 -10.797083,-18.70108 -10.797075,-18.70109 21.594157,-1e-5 21.594154,1e-5 -10.797073,18.70109 z" inkscape:transform-center-y="6.2337011" inkscape:transform-center-x="3.2040961e-06"/>
<path sodipodi:type="star" style="fill:#513b66;fill-opacity:1;stroke:#ffffff;stroke-width:1.45006359;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" id="path4512-0-6-0-6" sodipodi:sides="3" sodipodi:cx="104.39186" sodipodi:cy="-214.43147" sodipodi:r1="24.93478" sodipodi:r2="12.467396" sodipodi:arg1="1.5707963" sodipodi:arg2="2.6179939" inkscape:flatsided="false" inkscape:rounded="0" inkscape:randomized="0" d="m 104.39186,-189.49669 -10.797081,-18.70109 -10.797071,-18.70108 21.594152,-10e-6 21.59415,10e-6 -10.79707,18.70109 z" inkscape:transform-center-y="-6.2337188" transform="scale(1,-1)" inkscape:transform-center-x="-3.813203e-06"/>
<path sodipodi:type="star" style="fill:#9e4933;fill-opacity:1;stroke:#ffffff;stroke-width:1.45006359;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" id="path4512-7-0-4" sodipodi:sides="3" sodipodi:cx="104.39186" sodipodi:cy="-139.62709" sodipodi:r1="24.934784" sodipodi:r2="12.467396" sodipodi:arg1="1.5707963" sodipodi:arg2="2.6179939" inkscape:flatsided="false" inkscape:rounded="0" inkscape:randomized="0" d="m 104.39186,-114.69231 -10.797081,-18.70108 -10.797075,-18.70109 21.594156,-1e-5 21.59416,1e-5 -10.79708,18.70109 z" inkscape:transform-center-y="-6.2336913" transform="scale(1,-1)" inkscape:transform-center-x="-3.8132028e-06"/>
<path sodipodi:type="star" style="fill:#473470;fill-opacity:1;stroke:#ffffff;stroke-width:1.45006359;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" id="path4512-0-6-0-6-2" sodipodi:sides="3" sodipodi:cx="61.203517" sodipodi:cy="-214.43143" sodipodi:r1="24.934776" sodipodi:r2="12.467396" sodipodi:arg1="1.5707963" sodipodi:arg2="2.6179939" inkscape:flatsided="false" inkscape:rounded="0" inkscape:randomized="0" d="m 61.203519,-189.49665 -10.797083,-18.70108 -10.797068,-18.70108 21.59415,-1e-5 21.594149,0 -10.797068,18.70109 z" inkscape:transform-center-y="-6.2337222" transform="scale(1,-1)" inkscape:transform-center-x="2.8458428e-06"/>
<path sodipodi:type="star" style="fill:#813535;fill-opacity:1;stroke:#ffffff;stroke-width:1.45006359;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" id="path4512-1-5-48-8" sodipodi:sides="3" sodipodi:cx="39.609363" sodipodi:cy="201.96402" sodipodi:r1="24.93478" sodipodi:r2="12.467394" sodipodi:arg1="1.5707963" sodipodi:arg2="2.6179939" inkscape:flatsided="false" inkscape:rounded="0" inkscape:randomized="0" d="m 39.609364,226.8988 -10.79708,-18.70108 -10.797074,-18.70109 21.594154,0 21.594152,0 -10.797073,18.70109 z" inkscape:transform-center-y="6.2336885" inkscape:transform-center-x="3.0724705e-06"/>
</svg>

Before

Width:  |  Height:  |  Size: 1.3 KiB

After

Width:  |  Height:  |  Size: 14 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 5.5 KiB

After

Width:  |  Height:  |  Size: 29 KiB

View File

@ -0,0 +1,488 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<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:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
viewBox="0 0 713.35878 175.8678"
height="49.633801mm"
width="201.3257mm"
version="1.1"
id="svg6"
sodipodi:docname="logo_full.svg"
inkscape:version="0.92.2 2405546, 2018-03-11">
<metadata
id="metadata12">
<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 />
</cc:Work>
</rdf:RDF>
</metadata>
<defs
id="defs10" />
<sodipodi:namedview
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1"
objecttolerance="10"
gridtolerance="10"
guidetolerance="10"
inkscape:pageopacity="0"
inkscape:pageshadow="2"
inkscape:window-width="1920"
inkscape:window-height="1052"
id="namedview8"
showgrid="false"
inkscape:zoom="1.4142136"
inkscape:cx="323.36364"
inkscape:cy="6.7496472"
inkscape:window-x="1920"
inkscape:window-y="0"
inkscape:window-maximized="1"
inkscape:current-layer="svg6"
inkscape:measure-start="0,0"
inkscape:measure-end="0,0" />
<path
inkscape:connector-curvature="0"
id="path4558"
style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:132.05960083px;line-height:1;font-family:'Montserrat Alternates';-inkscape-font-specification:'Montserrat Alternates Bold';letter-spacing:0px;word-spacing:0px;fill:#fafafa;fill-opacity:1;stroke:none;stroke-width:0.68781048"
d="m 186.46678,90.943162 q 12.94184,0 22.58219,10.168588 9.64035,10.03653 9.64035,25.88368 0,15.84716 -9.90447,26.54398 -9.90447,10.69683 -22.58219,10.69683 -12.54566,0 -20.86542,-10.43271 v 9.37623 H 145.5283 V 65.19154 h 19.80894 v 34.86373 q 8.1877,-9.112108 21.12954,-9.112108 z m -21.39366,36.844628 q 0,8.58387 4.75415,14.13038 4.8862,5.41444 11.7533,5.41444 6.8671,0 12.01743,-5.41444 5.15032,-5.54651 5.15032,-14.13038 0,-8.58387 -5.01826,-14.3945 -5.01827,-5.81062 -12.01743,-5.81062 -6.99916,0 -11.88536,5.81062 -4.75415,5.67857 -4.75415,14.3945 z" />
<path
inkscape:connector-curvature="0"
id="path4560"
style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:132.05960083px;line-height:1;font-family:'Montserrat Alternates';-inkscape-font-specification:'Montserrat Alternates Bold';letter-spacing:0px;word-spacing:0px;fill:#fafafa;fill-opacity:1;stroke:none;stroke-width:0.68781048"
d="M 279.30674,130.42898 V 92.131699 h 19.941 v 71.048061 h -19.941 v -9.37623 q -7.39534,10.43271 -19.14864,10.43271 -11.62125,0 -19.54482,-7.26328 -7.92358,-7.39534 -7.92358,-21.78983 V 92.131699 h 19.941 v 38.693461 q 0,16.37539 12.01742,16.37539 5.94269,0 10.30065,-4.22591 4.35797,-4.35796 4.35797,-12.54566 z" />
<path
inkscape:connector-curvature="0"
id="path4562"
style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:132.05960083px;line-height:1;font-family:'Montserrat Alternates';-inkscape-font-specification:'Montserrat Alternates Bold';letter-spacing:0px;word-spacing:0px;fill:#fafafa;fill-opacity:1;stroke:none;stroke-width:0.68781048"
d="m 371.56688,141.12581 q 0,10.43271 -7.79151,16.77157 -7.65946,6.33886 -19.54482,6.33886 -7.92358,0 -16.50746,-2.77325 -8.58387,-2.90531 -15.45097,-8.45182 l 8.71594,-12.4136 q 11.093,8.58388 23.63866,8.58388 3.82973,0 6.07475,-1.45266 2.24501,-1.58471 2.24501,-4.09385 0,-2.50913 -3.16943,-4.62208 -3.03737,-2.11296 -8.98005,-3.96179 -5.81063,-1.84884 -8.98006,-3.16943 -3.03737,-1.3206 -6.99916,-3.82973 -8.05563,-5.01826 -8.05563,-14.79068 0,-9.90447 7.92357,-16.111267 7.92358,-6.206801 20.46924,-6.206801 12.54566,0 25.09133,8.451815 l -7.39534,13.205963 q -9.24417,-6.33886 -18.48835,-6.33886 -9.11211,0 -9.11211,5.01826 0,2.77325 2.90531,4.35797 2.90531,1.58471 9.64035,3.69767 6.73504,2.11295 9.5083,3.30149 2.90531,1.05647 6.86709,3.43355 7.39534,4.49002 7.39534,15.05479 z" />
<path
inkscape:connector-curvature="0"
id="path4564"
style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:132.05960083px;line-height:1;font-family:'Montserrat Alternates';-inkscape-font-specification:'Montserrat Alternates Bold';letter-spacing:0px;word-spacing:0px;fill:#fafafa;fill-opacity:1;stroke:none;stroke-width:0.68781048"
d="M 406.50078,163.17976 H 386.69184 V 92.131699 h 19.80894 z M 388.27656,83.151646 q -3.30149,-3.43355 -3.30149,-8.319755 0,-4.886205 3.30149,-8.187695 3.43355,-3.43355 8.31975,-3.43355 4.88621,0 8.1877,3.43355 3.43355,3.30149 3.43355,8.187695 0,4.886205 -3.43355,8.319755 -3.30149,3.30149 -8.1877,3.30149 -4.8862,0 -8.31975,-3.30149 z" />
<path
inkscape:connector-curvature="0"
id="path4566"
style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:132.05960083px;line-height:1;font-family:'Montserrat Alternates';-inkscape-font-specification:'Montserrat Alternates Bold';letter-spacing:0px;word-spacing:0px;fill:#fafafa;fill-opacity:1;stroke:none;stroke-width:0.68781048"
d="m 445.19012,123.56188 v 39.61788 H 425.38118 V 92.131699 h 19.80894 v 7.923571 q 8.98005,-9.112108 20.20511,-9.112108 11.22507,0 18.75247,7.923576 7.65945,7.923572 7.65945,21.129532 v 43.18349 h -19.80894 v -40.14611 q 0,-16.3754 -12.01742,-16.3754 -5.94268,0 -10.43271,4.35797 -4.35796,4.22591 -4.35796,12.54566 z" />
<path
inkscape:connector-curvature="0"
id="path4568"
style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:132.05960083px;line-height:1;font-family:'Montserrat Alternates';-inkscape-font-specification:'Montserrat Alternates Bold';letter-spacing:0px;word-spacing:0px;fill:#fafafa;fill-opacity:1;stroke:none;stroke-width:0.68781048"
d="m 543.26706,147.99291 q 5.67856,0 10.96094,-2.77325 5.41445,-2.90531 8.58388,-7.65946 l 11.35712,12.28154 q -13.60214,14.3945 -30.76988,14.3945 -17.03569,0 -27.20428,-10.43271 -10.16859,-10.43271 -10.16859,-26.54398 0,-16.24333 11.09301,-26.27986 11.22506,-10.036528 25.75162,-10.036528 14.52655,0 24.29896,8.187695 9.77242,8.187693 10.56477,21.129533 v 2.50914 l -47.27733,19.54482 q 4.49002,5.67856 12.80978,5.67856 z m 0.6603,-39.882 q -7.26328,0 -12.94185,4.75415 -5.5465,4.75414 -5.5465,13.20596 0,1.58471 0.13206,2.37707 l 30.90195,-12.54566 q -1.71678,-7.79152 -12.54566,-7.79152 z" />
<path
inkscape:connector-curvature="0"
id="path4570"
style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:132.05960083px;line-height:1;font-family:'Montserrat Alternates';-inkscape-font-specification:'Montserrat Alternates Bold';letter-spacing:0px;word-spacing:0px;fill:#fafafa;fill-opacity:1;stroke:none;stroke-width:0.68781048"
d="m 645.22945,141.12581 q 0,10.43271 -7.79152,16.77157 -7.65945,6.33886 -19.54482,6.33886 -7.92357,0 -16.50745,-2.77325 -8.58387,-2.90531 -15.45097,-8.45182 l 8.71593,-12.4136 q 11.09301,8.58388 23.63867,8.58388 3.82973,0 6.07474,-1.45266 2.24502,-1.58471 2.24502,-4.09385 0,-2.50913 -3.16943,-4.62208 -3.03738,-2.11296 -8.98006,-3.96179 -5.81062,-1.84884 -8.98005,-3.16943 -3.03737,-1.3206 -6.99916,-3.82973 -8.05563,-5.01826 -8.05563,-14.79068 0,-9.90447 7.92357,-16.111267 7.92358,-6.206801 20.46924,-6.206801 12.54566,0 25.09132,8.451815 l -7.39533,13.205963 q -9.24418,-6.33886 -18.48835,-6.33886 -9.11211,0 -9.11211,5.01826 0,2.77325 2.90531,4.35797 2.90531,1.58471 9.64035,3.69767 6.73504,2.11295 9.50829,3.30149 2.90531,1.05647 6.8671,3.43355 7.39534,4.49002 7.39534,15.05479 z" />
<path
inkscape:connector-curvature="0"
id="path4572"
style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:132.05960083px;line-height:1;font-family:'Montserrat Alternates';-inkscape-font-specification:'Montserrat Alternates Bold';letter-spacing:0px;word-spacing:0px;fill:#fafafa;fill-opacity:1;stroke:none;stroke-width:0.68781048"
d="m 713.83855,141.12581 q 0,10.43271 -7.79152,16.77157 -7.65945,6.33886 -19.54482,6.33886 -7.92357,0 -16.50745,-2.77325 -8.58387,-2.90531 -15.45097,-8.45182 l 8.71593,-12.4136 q 11.09301,8.58388 23.63867,8.58388 3.82973,0 6.07474,-1.45266 2.24502,-1.58471 2.24502,-4.09385 0,-2.50913 -3.16943,-4.62208 -3.03738,-2.11296 -8.98006,-3.96179 -5.81062,-1.84884 -8.98005,-3.16943 -3.03737,-1.3206 -6.99916,-3.82973 -8.05563,-5.01826 -8.05563,-14.79068 0,-9.90447 7.92357,-16.111267 7.92358,-6.206801 20.46924,-6.206801 12.54566,0 25.09132,8.451815 l -7.39533,13.205963 q -9.24418,-6.33886 -18.48835,-6.33886 -9.11211,0 -9.11211,5.01826 0,2.77325 2.90531,4.35797 2.90531,1.58471 9.64035,3.69767 6.73504,2.11295 9.50829,3.30149 2.90531,1.05647 6.8671,3.43355 7.39534,4.49002 7.39534,15.05479 z" />
<path
inkscape:connector-curvature="0"
id="path4539"
style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:66.75935364px;line-height:1.25;font-family:'Montserrat Alternates';-inkscape-font-specification:'Montserrat Alternates Bold';letter-spacing:0px;word-spacing:0px;fill:#fafafa;fill-opacity:1;stroke:none;stroke-width:0.89409846"
d="m 204.98857,70.542037 q 0,5.273989 -3.9388,8.478438 -3.87204,3.204449 -9.88038,3.204449 -4.00556,0 -8.34492,-1.401946 -4.33936,-1.468706 -7.81085,-4.272599 L 179.41974,70.275 q 5.60779,4.339358 11.94992,4.339358 1.93603,0 3.07094,-0.734353 1.1349,-0.801112 1.1349,-2.06954 0,-1.268428 -1.60222,-2.336577 -1.53547,-1.06815 -4.53964,-2.002781 -2.93741,-0.934631 -4.53963,-1.602225 -1.53547,-0.667593 -3.53825,-1.936021 -4.07232,-2.536855 -4.07232,-7.477047 0,-5.006952 4.00556,-8.144642 4.00556,-3.137689 10.3477,-3.137689 6.34214,0 12.68428,4.272598 l -3.73852,6.675936 q -4.67316,-3.204449 -9.34631,-3.204449 -4.6064,0 -4.6064,2.536855 0,1.401947 1.46871,2.203059 1.4687,0.801112 4.87343,1.869262 3.40473,1.06815 4.80667,1.668984 1.46871,0.534075 3.47149,1.735743 3.73852,2.269818 3.73852,7.610566 z" />
<path
inkscape:connector-curvature="0"
id="path4541"
style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:66.75935364px;line-height:1.25;font-family:'Montserrat Alternates';-inkscape-font-specification:'Montserrat Alternates Bold';letter-spacing:0px;word-spacing:0px;fill:#fafafa;fill-opacity:1;stroke:none;stroke-width:0.89409846"
d="m 229.85852,73.34593 q 5.00695,0 9.01251,-5.006951 l 5.94158,6.675935 q -6.94297,7.21001 -15.02085,7.21001 -8.07788,0 -13.68567,-5.073711 -5.54102,-5.14047 -5.54102,-13.35187 0,-8.27816 5.60778,-13.418631 5.67455,-5.207229 13.41863,-5.207229 3.87204,0 7.81085,1.602224 4.00556,1.602225 7.00973,4.739914 l -5.20723,6.809455 q -1.73574,-2.06954 -4.2726,-3.204449 -2.4701,-1.134909 -4.94019,-1.134909 -3.9388,0 -6.80946,2.603614 -2.80389,2.536856 -2.80389,7.143251 0,4.539636 2.80389,7.076492 2.87066,2.536855 6.67594,2.536855 z" />
<path
inkscape:connector-curvature="0"
id="path4543"
style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:66.75935364px;line-height:1.25;font-family:'Montserrat Alternates';-inkscape-font-specification:'Montserrat Alternates Bold';letter-spacing:0px;word-spacing:0px;fill:#fafafa;fill-opacity:1;stroke:none;stroke-width:0.89409846"
d="m 266.84528,82.224924 q -6.87621,0 -12.01668,-5.14047 -5.14047,-5.14047 -5.14047,-13.48539 0,-8.411678 5.27399,-13.41863 5.27399,-5.006951 12.21696,-5.006951 5.40751,0 9.41307,3.605005 v -3.004171 h 10.08066 v 35.916532 h -10.08066 v -2.937411 q -4.2726,3.471486 -9.74687,3.471486 z m -7.07649,-18.425581 q 0,4.406117 2.60362,7.21001 2.60361,2.737133 6.0751,2.737133 3.47148,0 5.87482,-2.737133 2.40334,-2.803893 2.40334,-7.143251 0,-4.406117 -2.40334,-7.343529 -2.40334,-2.937412 -5.94158,-2.937412 -3.53825,0 -6.0751,2.937412 -2.53686,2.870652 -2.53686,7.27677 z" />
<path
inkscape:connector-curvature="0"
id="path4545"
style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:66.75935364px;line-height:1.25;font-family:'Montserrat Alternates';-inkscape-font-specification:'Montserrat Alternates Bold';letter-spacing:0px;word-spacing:0px;fill:#fafafa;fill-opacity:1;stroke:none;stroke-width:0.89409846"
d="m 306.55562,35.026061 v 34.04727 q 0,2.06954 1.06815,3.271209 1.06815,1.134909 2.53686,1.134909 2.80389,0 4.73991,-2.536856 l 3.73853,7.009733 q -4.67316,4.272598 -9.88039,4.272598 -5.14047,0 -8.74547,-3.404727 -3.53825,-3.404727 -3.53825,-9.27955 V 35.026061 Z" />
<path
inkscape:connector-curvature="0"
id="path4547"
style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:66.75935364px;line-height:1.25;font-family:'Montserrat Alternates';-inkscape-font-specification:'Montserrat Alternates Bold';letter-spacing:0px;word-spacing:0px;fill:#fafafa;fill-opacity:1;stroke:none;stroke-width:0.89409846"
d="m 334.00102,81.690849 h -10.0139 V 45.774317 h 10.0139 z m -9.21279,-40.456168 q -1.66898,-1.735743 -1.66898,-4.205839 0,-2.470096 1.66898,-4.13908 1.73575,-1.735743 4.20584,-1.735743 2.4701,0 4.13908,1.735743 1.73575,1.668984 1.73575,4.13908 0,2.470096 -1.73575,4.205839 -1.66898,1.668984 -4.13908,1.668984 -2.47009,0 -4.20584,-1.668984 z" />
<path
inkscape:connector-curvature="0"
id="path4549"
style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:66.75935364px;line-height:1.25;font-family:'Montserrat Alternates';-inkscape-font-specification:'Montserrat Alternates Bold';letter-spacing:0px;word-spacing:0px;fill:#fafafa;fill-opacity:1;stroke:none;stroke-width:0.89409846"
d="m 360.50239,74.013524 q 2.87066,0 5.54103,-1.401947 2.73713,-1.468706 4.33936,-3.872042 l 5.7413,6.20862 q -6.87621,7.276769 -15.55493,7.276769 -8.61195,0 -13.75242,-5.273989 -5.14047,-5.273989 -5.14047,-13.41863 0,-8.2114 5.60778,-13.285111 5.67455,-5.073711 13.01807,-5.073711 7.34353,0 12.28373,4.13908 4.94019,4.13908 5.34074,10.681496 v 1.268428 l -23.89984,9.880384 q 2.26981,2.870653 6.47565,2.870653 z m 0.3338,-20.161325 q -3.67176,0 -6.54242,2.403337 -2.80389,2.403336 -2.80389,6.675935 0,0.801112 0.0668,1.201668 l 15.62169,-6.342138 q -0.86787,-3.938802 -6.34214,-3.938802 z" />
<path
sodipodi:type="star"
style="fill:#813665;fill-opacity:1;stroke:#ffffff;stroke-width:0.9375;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
id="path4512"
sodipodi:sides="3"
sodipodi:cx="74.53346"
sodipodi:cy="74.111785"
sodipodi:r1="16.120922"
sodipodi:r2="8.060462"
sodipodi:arg1="1.5707963"
sodipodi:arg2="2.6179939"
inkscape:flatsided="false"
inkscape:rounded="0"
inkscape:randomized="0"
d="m 74.533463,90.232708 -6.980565,-12.090691 -6.980564,-12.090692 13.961129,-1e-6 13.961127,0 -6.980563,12.090693 z"
inkscape:transform-center-y="4.0302316"
inkscape:transform-center-x="-3.2692633e-06" />
<path
sodipodi:type="star"
style="fill:#7e3972;fill-opacity:1;stroke:#ffffff;stroke-width:0.9375;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
id="path4512-1"
sodipodi:sides="3"
sodipodi:cx="88.494588"
sodipodi:cy="-82.172248"
sodipodi:r1="16.12092"
sodipodi:r2="8.060462"
sodipodi:arg1="1.5707963"
sodipodi:arg2="2.6179939"
inkscape:flatsided="false"
inkscape:rounded="0"
inkscape:randomized="0"
d="m 88.494591,-66.051329 -6.980565,-12.090689 -6.980562,-12.090691 13.961127,-2e-6 13.961129,2e-6 -6.980564,12.090691 z"
inkscape:transform-center-y="-4.0302261"
transform="scale(1,-1)"
inkscape:transform-center-x="3.2685041e-06" />
<path
sodipodi:type="star"
style="fill:#853252;fill-opacity:1;stroke:#ffffff;stroke-width:0.9375;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
id="path4512-1-9"
sodipodi:sides="3"
sodipodi:cx="74.53346"
sodipodi:cy="-57.990863"
sodipodi:r1="16.12092"
sodipodi:r2="8.060462"
sodipodi:arg1="1.5707963"
sodipodi:arg2="2.6179939"
inkscape:flatsided="false"
inkscape:rounded="0"
inkscape:randomized="0"
d="m 74.533463,-41.869944 -6.980565,-12.090689 -6.980562,-12.090691 13.961127,-2e-6 13.961126,2e-6 -6.980562,12.090691 z"
inkscape:transform-center-y="-4.0302248"
transform="scale(1,-1)"
inkscape:transform-center-x="-3.2692633e-06" />
<path
sodipodi:type="star"
style="fill:#733e79;fill-opacity:1;stroke:#ffffff;stroke-width:0.9375;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
id="path4512-0"
sodipodi:sides="3"
sodipodi:cx="88.494588"
sodipodi:cy="98.293166"
sodipodi:r1="16.12092"
sodipodi:r2="8.060462"
sodipodi:arg1="1.5707963"
sodipodi:arg2="2.6179939"
inkscape:flatsided="false"
inkscape:rounded="0"
inkscape:randomized="0"
d="m 88.494591,114.41409 -6.980565,-12.09069 -6.980562,-12.090693 13.961127,-2e-6 13.961129,2e-6 -6.980564,12.090693 z"
inkscape:transform-center-y="4.0302255"
inkscape:transform-center-x="3.2685041e-06" />
<path
sodipodi:type="star"
style="fill:#5f4770;fill-opacity:1;stroke:#ffffff;stroke-width:0.9375;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
id="path4512-0-6"
sodipodi:sides="3"
sodipodi:cx="74.53346"
sodipodi:cy="122.47455"
sodipodi:r1="16.12092"
sodipodi:r2="8.060462"
sodipodi:arg1="1.5707963"
sodipodi:arg2="2.6179939"
inkscape:flatsided="false"
inkscape:rounded="0"
inkscape:randomized="0"
d="m 74.533463,138.59547 -6.980565,-12.09069 -6.980562,-12.09069 13.961127,0 13.961126,0 -6.980562,12.09069 z"
inkscape:transform-center-y="4.0302335"
inkscape:transform-center-x="-3.2692633e-06" />
<path
sodipodi:type="star"
style="fill:#892e46;fill-opacity:1;stroke:#ffffff;stroke-width:0.9375;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
id="path4512-7"
sodipodi:sides="3"
sodipodi:cx="88.494588"
sodipodi:cy="49.930404"
sodipodi:r1="16.12092"
sodipodi:r2="8.060462"
sodipodi:arg1="1.5707963"
sodipodi:arg2="2.6179939"
inkscape:flatsided="false"
inkscape:rounded="0"
inkscape:randomized="0"
d="m 88.494591,66.051325 -6.980565,-12.090689 -6.980562,-12.090691 13.961127,-2e-6 13.961129,10e-7 -6.980564,12.090692 z"
inkscape:transform-center-y="4.0302302"
inkscape:transform-center-x="3.2685041e-06" />
<path
sodipodi:type="star"
style="fill:#bd792b;fill-opacity:1;stroke:#ffffff;stroke-width:0.9375;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
id="path4512-1-9-7"
sodipodi:sides="3"
sodipodi:cx="88.494588"
sodipodi:cy="-33.809474"
sodipodi:r1="16.12092"
sodipodi:r2="8.060462"
sodipodi:arg1="1.5707963"
sodipodi:arg2="2.6179939"
inkscape:flatsided="false"
inkscape:rounded="0"
inkscape:randomized="0"
d="m 88.494591,-17.688555 -6.980565,-12.090689 -6.980562,-12.090691 13.961127,-2e-6 13.961129,2e-6 -6.980564,12.090691 z"
inkscape:transform-center-y="-4.0302259"
transform="scale(1,-1)"
inkscape:transform-center-x="3.2685042e-06" />
<path
sodipodi:type="star"
style="fill:#b77531;fill-opacity:1;stroke:#ffffff;stroke-width:0.9375;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
id="path4512-7-4"
sodipodi:sides="3"
sodipodi:cx="60.572332"
sodipodi:cy="49.930404"
sodipodi:r1="16.12092"
sodipodi:r2="8.060462"
sodipodi:arg1="1.5707963"
sodipodi:arg2="2.6179939"
inkscape:flatsided="false"
inkscape:rounded="0"
inkscape:randomized="0"
d="m 60.572331,66.051325 -6.980565,-12.090689 -6.980562,-12.090691 13.961127,-2e-6 13.961126,10e-7 -6.980562,12.090692 z"
inkscape:transform-center-y="4.030231" />
<path
sodipodi:type="star"
style="fill:#a85b31;fill-opacity:1;stroke:#ffffff;stroke-width:0.9375;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
id="path4512-7-0"
sodipodi:sides="3"
sodipodi:cx="60.572328"
sodipodi:cy="-82.17224"
sodipodi:r1="16.12092"
sodipodi:r2="8.060462"
sodipodi:arg1="1.5707963"
sodipodi:arg2="2.6179939"
inkscape:flatsided="false"
inkscape:rounded="0"
inkscape:randomized="0"
d="M 60.572327,-66.051321 53.591762,-78.14201 46.6112,-90.232701 l 13.961127,-2e-6 13.961126,10e-7 -6.980562,12.090692 z"
inkscape:transform-center-y="-4.0302261"
transform="scale(1,-1)"
inkscape:transform-center-x="1.1925319e-06" />
<path
sodipodi:type="star"
style="fill:#564374;fill-opacity:1;stroke:#ffffff;stroke-width:0.9375;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
id="path4512-1-5-4"
sodipodi:sides="3"
sodipodi:cx="88.494588"
sodipodi:cy="-130.53503"
sodipodi:r1="16.12092"
sodipodi:r2="8.060462"
sodipodi:arg1="1.5707963"
sodipodi:arg2="2.6179939"
inkscape:flatsided="false"
inkscape:rounded="0"
inkscape:randomized="0"
d="m 88.494591,-114.41411 -6.980565,-12.09069 -6.980562,-12.09069 13.961127,-10e-6 13.961129,10e-6 -6.980564,12.09069 z"
inkscape:transform-center-y="-4.0302233"
transform="scale(1,-1)"
inkscape:transform-center-x="3.2685042e-06" />
<path
sodipodi:type="star"
style="fill:#8f2834;fill-opacity:1;stroke:#ffffff;stroke-width:0.9375;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
id="path4512-1-5-4-7"
sodipodi:sides="3"
sodipodi:cx="102.45572"
sodipodi:cy="-57.990855"
sodipodi:r1="16.120918"
sodipodi:r2="8.060462"
sodipodi:arg1="1.5707963"
sodipodi:arg2="2.6179939"
inkscape:flatsided="false"
inkscape:rounded="0"
inkscape:randomized="0"
d="m 102.45572,-41.869938 -6.980566,-12.090687 -6.98056,-12.09069 13.961126,-3e-6 13.96112,2e-6 -6.98056,12.090691 z"
inkscape:transform-center-y="-4.0302267"
transform="scale(1,-1)"
inkscape:transform-center-x="2.6214062e-06" />
<path
sodipodi:type="star"
style="fill:#924433;fill-opacity:1;stroke:#ffffff;stroke-width:0.9375;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
id="path4512-1-5-48"
sodipodi:sides="3"
sodipodi:cx="46.611207"
sodipodi:cy="122.47455"
sodipodi:r1="16.12092"
sodipodi:r2="8.060462"
sodipodi:arg1="1.5707963"
sodipodi:arg2="2.6179939"
inkscape:flatsided="false"
inkscape:rounded="0"
inkscape:randomized="0"
d="m 46.611206,138.59547 -6.980565,-12.09069 -6.980562,-12.09069 13.961127,0 13.961126,0 -6.980561,12.09069 z"
inkscape:transform-center-y="4.0302292"
inkscape:transform-center-x="1.3951008e-06" />
<path
sodipodi:type="star"
style="fill:#513f62;fill-opacity:1;stroke:#ffffff;stroke-width:0.9375;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
id="path4512-0-6-5"
sodipodi:sides="3"
sodipodi:cx="88.494588"
sodipodi:cy="146.65594"
sodipodi:r1="16.12092"
sodipodi:r2="8.060462"
sodipodi:arg1="1.5707963"
sodipodi:arg2="2.6179939"
inkscape:flatsided="false"
inkscape:rounded="0"
inkscape:randomized="0"
d="m 88.494591,162.77687 -6.980565,-12.09069 -6.980562,-12.09069 13.961127,-1e-5 13.961129,0 -6.980564,12.0907 z"
inkscape:transform-center-y="4.030237"
inkscape:transform-center-x="3.2685042e-06" />
<path
sodipodi:type="star"
style="fill:#5e3f78;fill-opacity:1;stroke:#ffffff;stroke-width:0.9375;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
id="path4512-0-8"
sodipodi:sides="3"
sodipodi:cx="102.45572"
sodipodi:cy="122.47455"
sodipodi:r1="16.12092"
sodipodi:r2="8.060462"
sodipodi:arg1="1.5707963"
sodipodi:arg2="2.6179939"
inkscape:flatsided="false"
inkscape:rounded="0"
inkscape:randomized="0"
d="m 102.45572,138.59547 -6.980566,-12.09069 -6.980562,-12.09069 13.961128,0 13.96113,0 -6.98057,12.09069 z"
inkscape:transform-center-y="4.0302335"
inkscape:transform-center-x="2.1768771e-06" />
<path
sodipodi:type="star"
style="fill:#674176;fill-opacity:1;stroke:#ffffff;stroke-width:0.9375;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
id="path4512-1-5-2"
sodipodi:sides="3"
sodipodi:cx="102.45572"
sodipodi:cy="-106.35362"
sodipodi:r1="16.12092"
sodipodi:r2="8.060462"
sodipodi:arg1="1.5707963"
sodipodi:arg2="2.6179939"
inkscape:flatsided="false"
inkscape:rounded="0"
inkscape:randomized="0"
d="m 102.45572,-90.232702 -6.980566,-12.090688 -6.980562,-12.09069 13.961128,0 13.96113,0 -6.98057,12.09069 z"
inkscape:transform-center-y="-4.0302278"
transform="scale(1,-1)"
inkscape:transform-center-x="2.1768771e-06" />
<path
sodipodi:type="star"
style="fill:#584070;fill-opacity:1;stroke:#ffffff;stroke-width:0.9375;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
id="path4512-0-6-0"
sodipodi:sides="3"
sodipodi:cx="60.572332"
sodipodi:cy="-130.535"
sodipodi:r1="16.12092"
sodipodi:r2="8.060462"
sodipodi:arg1="1.5707963"
sodipodi:arg2="2.6179939"
inkscape:flatsided="false"
inkscape:rounded="0"
inkscape:randomized="0"
d="m 60.572331,-114.41408 -6.980565,-12.09069 -6.980562,-12.09069 13.961127,-1e-5 13.961126,1e-5 -6.980562,12.09069 z"
inkscape:transform-center-y="-4.0302371"
transform="scale(1,-1)" />
<path
sodipodi:type="star"
style="fill:#49376d;fill-opacity:1;stroke:#ffffff;stroke-width:0.9375;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
id="path4512-0-6-6"
sodipodi:sides="3"
sodipodi:cx="60.572332"
sodipodi:cy="146.65591"
sodipodi:r1="16.12092"
sodipodi:r2="8.060462"
sodipodi:arg1="1.5707963"
sodipodi:arg2="2.6179939"
inkscape:flatsided="false"
inkscape:rounded="0"
inkscape:randomized="0"
d="m 60.572331,162.77683 -6.980565,-12.09068 -6.980562,-12.0907 13.961127,0 13.961126,0 -6.980562,12.0907 z"
inkscape:transform-center-y="4.0302335" />
<path
sodipodi:type="star"
style="fill:#513b66;fill-opacity:1;stroke:#ffffff;stroke-width:0.9375;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
id="path4512-0-6-0-6"
sodipodi:sides="3"
sodipodi:cx="74.533475"
sodipodi:cy="-154.7164"
sodipodi:r1="16.120918"
sodipodi:r2="8.060462"
sodipodi:arg1="1.5707963"
sodipodi:arg2="2.6179939"
inkscape:flatsided="false"
inkscape:rounded="0"
inkscape:randomized="0"
d="m 74.533478,-138.59548 -6.980565,-12.09069 -6.98056,-12.09069 13.961125,0 13.961124,0 -6.980559,12.09069 z"
inkscape:transform-center-y="-4.0302415"
transform="scale(1,-1)"
inkscape:transform-center-x="-4.1583215e-06" />
<path
sodipodi:type="star"
style="fill:#9e4933;fill-opacity:1;stroke:#ffffff;stroke-width:0.9375;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
id="path4512-7-0-4"
sodipodi:sides="3"
sodipodi:cx="74.533475"
sodipodi:cy="-106.35364"
sodipodi:r1="16.12092"
sodipodi:r2="8.060462"
sodipodi:arg1="1.5707963"
sodipodi:arg2="2.6179939"
inkscape:flatsided="false"
inkscape:rounded="0"
inkscape:randomized="0"
d="m 74.533478,-90.232718 -6.980565,-12.090692 -6.980562,-12.09069 13.961127,0 13.961126,0 -6.980561,12.09069 z"
inkscape:transform-center-y="-4.0302243"
transform="scale(1,-1)"
inkscape:transform-center-x="-4.1583214e-06" />
<path
sodipodi:type="star"
style="fill:#473470;fill-opacity:1;stroke:#ffffff;stroke-width:0.9375;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
id="path4512-0-6-0-6-2"
sodipodi:sides="3"
sodipodi:cx="46.611207"
sodipodi:cy="-154.71637"
sodipodi:r1="16.120916"
sodipodi:r2="8.060462"
sodipodi:arg1="1.5707963"
sodipodi:arg2="2.6179939"
inkscape:flatsided="false"
inkscape:rounded="0"
inkscape:randomized="0"
d="m 46.611206,-138.59545 -6.980565,-12.09069 -6.980558,-12.09069 13.961123,0 13.961123,0 -6.980558,12.09069 z"
inkscape:transform-center-y="-4.0302449"
transform="scale(1,-1)"
inkscape:transform-center-x="1.3951008e-06" />
<path
sodipodi:type="star"
style="fill:#813535;fill-opacity:1;stroke:#ffffff;stroke-width:0.9375;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
id="path4512-1-5-48-8"
sodipodi:sides="3"
sodipodi:cx="32.650083"
sodipodi:cy="146.6559"
sodipodi:r1="16.120918"
sodipodi:r2="8.060461"
sodipodi:arg1="1.5707963"
sodipodi:arg2="2.6179939"
inkscape:flatsided="false"
inkscape:rounded="0"
inkscape:randomized="0"
d="m 32.650082,162.77682 -6.980564,-12.09069 -6.980561,-12.09069 13.961125,0 13.961124,0 -6.98056,12.09069 z"
inkscape:transform-center-y="4.0302255"
inkscape:transform-center-x="1.8199342e-06" />
</svg>

After

Width:  |  Height:  |  Size: 29 KiB

View File

@ -1 +1,34 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 216.4144 232.00976"><path d="M107.86523 0C78.203984.2425 49.672422 3.4535937 33.044922 11.089844c0 0-32.97656262 14.752031-32.97656262 65.082031 0 11.525-.224375 25.306175.140625 39.919925 1.19750002 49.22 9.02375002 97.72843 54.53124962 109.77343 20.9825 5.55375 38.99711 6.71547 53.505856 5.91797 26.31125-1.45875 41.08203-9.38867 41.08203-9.38867l-.86914-19.08984s-18.80171 5.92758-39.91796 5.20508c-20.921254-.7175-43.006879-2.25516-46.390629-27.94141-.3125-2.25625-.46875-4.66938-.46875-7.20313 0 0 20.536953 5.0204 46.564449 6.21289 15.915.73001 30.8393-.93343 45.99805-2.74218 29.07-3.47125 54.38125-21.3818 57.5625-37.74805 5.0125-25.78125 4.59961-62.916015 4.59961-62.916015 0-50.33-32.97461-65.082031-32.97461-65.082031C166.80539 3.4535938 138.255.2425 108.59375 0h-.72852zM74.296875 39.326172c12.355 0 21.710234 4.749297 27.896485 14.248047l6.01367 10.080078 6.01563-10.080078c6.185-9.49875 15.54023-14.248047 27.89648-14.248047 10.6775 0 19.28156 3.753672 25.85156 11.076172 6.36875 7.3225 9.53907 17.218828 9.53907 29.673828v60.941408h-24.14454V81.869141c0-12.46875-5.24453-18.798829-15.73828-18.798829-11.6025 0-17.41797 7.508516-17.41797 22.353516v32.375002H96.207031V85.423828c0-14.845-5.815468-22.353515-17.417969-22.353516-10.49375 0-15.740234 6.330079-15.740234 18.798829v59.148439H38.904297V80.076172c0-12.455 3.171016-22.351328 9.541015-29.673828 6.568751-7.3225 15.172813-11.076172 25.851563-11.076172z" fill="#fff"/></svg>
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<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:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" width="61.076954mm" height="65.47831mm" viewBox="0 0 216.4144 232.00976" version="1.1" id="svg6" sodipodi:docname="logo.svg" inkscape:version="0.92.1 r">
<metadata id="metadata12">
<rdf:RDF>
<cc:Work rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type rdf:resource="http://purl.org/dc/dcmitype/StillImage"/>
</cc:Work>
</rdf:RDF>
</metadata>
<defs id="defs10"/>
<sodipodi:namedview pagecolor="#ffffff" bordercolor="#666666" borderopacity="1" objecttolerance="10" gridtolerance="10" guidetolerance="10" inkscape:pageopacity="0" inkscape:pageshadow="2" inkscape:window-width="1920" inkscape:window-height="1025" id="namedview8" showgrid="false" inkscape:zoom="1.2343371" inkscape:cx="104.83306" inkscape:cy="198.35849" inkscape:window-x="0" inkscape:window-y="27" inkscape:window-maximized="1" inkscape:current-layer="svg6"/>
<path sodipodi:type="star" style="fill:#813665;fill-opacity:1;stroke:#ffffff;stroke-width:1.45006359;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" id="path4512-36" sodipodi:sides="3" sodipodi:cx="104.39184" sodipodi:cy="89.757514" sodipodi:r1="24.934786" sodipodi:r2="12.467396" sodipodi:arg1="1.5707963" sodipodi:arg2="2.6179939" inkscape:flatsided="false" inkscape:rounded="0" inkscape:randomized="0" d="M 104.39184,114.6923 93.594756,95.991213 82.79768,77.290123 l 21.59416,-4e-6 21.59416,2e-6 -10.79708,18.701092 z" inkscape:transform-center-y="6.2336976" inkscape:transform-center-x="-3.15118e-06"/>
<path sodipodi:type="star" style="fill:#7e3972;fill-opacity:1;stroke:#ffffff;stroke-width:1.45006359;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" id="path4512-1" sodipodi:sides="3" sodipodi:cx="125.986" sodipodi:cy="-102.22491" sodipodi:r1="24.934784" sodipodi:r2="12.467396" sodipodi:arg1="1.5707963" sodipodi:arg2="2.6179939" inkscape:flatsided="false" inkscape:rounded="0" inkscape:randomized="0" d="m 125.986,-77.290123 -10.79708,-18.701086 -10.79708,-18.701091 21.59416,0 21.59416,0 -10.79708,18.701091 z" inkscape:transform-center-y="-6.23369" transform="scale(1,-1)" inkscape:transform-center-x="5.6624181e-06"/>
<path sodipodi:type="star" style="fill:#853252;fill-opacity:1;stroke:#ffffff;stroke-width:1.45006359;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" id="path4512-1-9" sodipodi:sides="3" sodipodi:cx="104.39184" sodipodi:cy="-64.822734" sodipodi:r1="24.934784" sodipodi:r2="12.467396" sodipodi:arg1="1.5707963" sodipodi:arg2="2.6179939" inkscape:flatsided="false" inkscape:rounded="0" inkscape:randomized="0" d="m 104.39184,-39.887947 -10.797084,-18.701086 -10.797075,-18.701089 21.594159,-5e-6 21.59415,3e-6 -10.79707,18.701091 z" inkscape:transform-center-y="-6.2336876" transform="scale(1,-1)" inkscape:transform-center-x="-3.15118e-06"/>
<path sodipodi:type="star" style="fill:#733e79;fill-opacity:1;stroke:#ffffff;stroke-width:1.45006359;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" id="path4512-0" sodipodi:sides="3" sodipodi:cx="125.986" sodipodi:cy="127.15968" sodipodi:r1="24.934784" sodipodi:r2="12.467396" sodipodi:arg1="1.5707963" sodipodi:arg2="2.6179939" inkscape:flatsided="false" inkscape:rounded="0" inkscape:randomized="0" d="m 125.986,152.09447 -10.79708,-18.70109 -10.79708,-18.70109 21.59416,0 21.59416,0 -10.79708,18.70109 z" inkscape:transform-center-y="6.2336887" inkscape:transform-center-x="5.6624181e-06"/>
<path sodipodi:type="star" style="fill:#5f4770;fill-opacity:1;stroke:#ffffff;stroke-width:1.45006359;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" id="path4512-0-6" sodipodi:sides="3" sodipodi:cx="104.39184" sodipodi:cy="164.56186" sodipodi:r1="24.934784" sodipodi:r2="12.467396" sodipodi:arg1="1.5707963" sodipodi:arg2="2.6179939" inkscape:flatsided="false" inkscape:rounded="0" inkscape:randomized="0" d="m 104.39184,189.49664 -10.797084,-18.70108 -10.797075,-18.70109 21.594159,-1e-5 21.59415,1e-5 -10.79707,18.70109 z" inkscape:transform-center-y="6.2336969" inkscape:transform-center-x="-3.15118e-06"/>
<path sodipodi:type="star" style="fill:#892e46;fill-opacity:1;stroke:#ffffff;stroke-width:1.45006359;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" id="path4512-7-7" sodipodi:sides="3" sodipodi:cx="125.986" sodipodi:cy="52.355334" sodipodi:r1="24.934784" sodipodi:r2="12.467396" sodipodi:arg1="1.5707963" sodipodi:arg2="2.6179939" inkscape:flatsided="false" inkscape:rounded="0" inkscape:randomized="0" d="m 125.986,77.290119 -10.79708,-18.701086 -10.79708,-18.701089 21.59416,-5e-6 21.59416,4e-6 -10.79708,18.70109 z" inkscape:transform-center-y="6.2336962" inkscape:transform-center-x="5.6624181e-06"/>
<path sodipodi:type="star" style="fill:#bd792b;fill-opacity:1;stroke:#ffffff;stroke-width:1.45006359;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" id="path4512-1-9-7" sodipodi:sides="3" sodipodi:cx="125.986" sodipodi:cy="-27.420535" sodipodi:r1="24.934784" sodipodi:r2="12.467396" sodipodi:arg1="1.5707963" sodipodi:arg2="2.6179939" inkscape:flatsided="false" inkscape:rounded="0" inkscape:randomized="0" d="m 125.986,-2.4857502 -10.79708,-18.7010858 -10.79708,-18.70109 21.59416,-4e-6 21.59416,3e-6 -10.79708,18.701091 z" inkscape:transform-center-y="-6.2336904" transform="scale(1,-1)" inkscape:transform-center-x="5.6624182e-06"/>
<path sodipodi:type="star" style="fill:#b77531;fill-opacity:1;stroke:#ffffff;stroke-width:1.45006359;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" id="path4512-7-4" sodipodi:sides="3" sodipodi:cx="82.797675" sodipodi:cy="52.355334" sodipodi:r1="24.934784" sodipodi:r2="12.467396" sodipodi:arg1="1.5707963" sodipodi:arg2="2.6179939" inkscape:flatsided="false" inkscape:rounded="0" inkscape:randomized="0" d="M 82.797677,77.290119 72.000594,58.589033 61.203519,39.887944 l 21.594157,-5e-6 21.594154,4e-6 -10.797073,18.70109 z" inkscape:transform-center-y="6.2336975" inkscape:transform-center-x="3.2040961e-06"/>
<path sodipodi:type="star" style="fill:#a85b31;fill-opacity:1;stroke:#ffffff;stroke-width:1.45006359;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" id="path4512-7-0" sodipodi:sides="3" sodipodi:cx="82.797668" sodipodi:cy="-102.2249" sodipodi:r1="24.934784" sodipodi:r2="12.467396" sodipodi:arg1="1.5707963" sodipodi:arg2="2.6179939" inkscape:flatsided="false" inkscape:rounded="0" inkscape:randomized="0" d="m 82.797669,-77.290115 -10.797082,-18.701087 -10.797075,-18.701088 21.594157,-1e-5 21.594151,1e-5 -10.79707,18.701089 z" inkscape:transform-center-y="-6.2336934" transform="scale(1,-1)"/>
<path sodipodi:type="star" style="fill:#564374;fill-opacity:1;stroke:#ffffff;stroke-width:1.45006359;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" id="path4512-1-5-4" sodipodi:sides="3" sodipodi:cx="125.986" sodipodi:cy="-177.0293" sodipodi:r1="24.934784" sodipodi:r2="12.467396" sodipodi:arg1="1.5707963" sodipodi:arg2="2.6179939" inkscape:flatsided="false" inkscape:rounded="0" inkscape:randomized="0" d="m 125.986,-152.09451 -10.79708,-18.70109 -10.79708,-18.70109 21.59416,0 21.59416,0 -10.79708,18.70109 z" inkscape:transform-center-y="-6.233687" transform="scale(1,-1)" inkscape:transform-center-x="5.6624182e-06"/>
<path sodipodi:type="star" style="fill:#8f2834;fill-opacity:1;stroke:#ffffff;stroke-width:1.45006359;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" id="path4512-1-5-4-7" sodipodi:sides="3" sodipodi:cx="147.58015" sodipodi:cy="-64.822723" sodipodi:r1="24.93478" sodipodi:r2="12.467396" sodipodi:arg1="1.5707963" sodipodi:arg2="2.6179939" inkscape:flatsided="false" inkscape:rounded="0" inkscape:randomized="0" d="m 147.58016,-39.887943 -10.79709,-18.701083 -10.79707,-18.701087 21.59415,-6e-6 21.59416,5e-6 -10.79707,18.701089 z" inkscape:transform-center-y="-6.2336898" transform="scale(1,-1)"/>
<path sodipodi:type="star" style="fill:#924433;fill-opacity:1;stroke:#ffffff;stroke-width:1.45006359;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" id="path4512-1-5-48" sodipodi:sides="3" sodipodi:cx="61.203517" sodipodi:cy="164.56186" sodipodi:r1="24.934784" sodipodi:r2="12.467396" sodipodi:arg1="1.5707963" sodipodi:arg2="2.6179939" inkscape:flatsided="false" inkscape:rounded="0" inkscape:randomized="0" d="m 61.203519,189.49664 -10.797083,-18.70108 -10.797075,-18.70109 21.594157,-1e-5 21.594156,1e-5 -10.797075,18.70109 z" inkscape:transform-center-y="6.2336903" inkscape:transform-center-x="2.8458428e-06"/>
<path sodipodi:type="star" style="fill:#513f62;fill-opacity:1;stroke:#ffffff;stroke-width:1.45006359;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" id="path4512-0-6-5" sodipodi:sides="3" sodipodi:cx="125.986" sodipodi:cy="201.96413" sodipodi:r1="24.934784" sodipodi:r2="12.467396" sodipodi:arg1="1.5707963" sodipodi:arg2="2.6179939" inkscape:flatsided="false" inkscape:rounded="0" inkscape:randomized="0" d="m 125.986,226.89891 -10.79708,-18.70109 -10.79708,-18.70108 21.59416,-10e-6 21.59416,0 -10.79708,18.70109 z" inkscape:transform-center-y="6.2337189" inkscape:transform-center-x="5.6624182e-06"/>
<path sodipodi:type="star" style="fill:#5e3f78;fill-opacity:1;stroke:#ffffff;stroke-width:1.45006359;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" id="path4512-0-8" sodipodi:sides="3" sodipodi:cx="147.58015" sodipodi:cy="164.56186" sodipodi:r1="24.934784" sodipodi:r2="12.467396" sodipodi:arg1="1.5707963" sodipodi:arg2="2.6179939" inkscape:flatsided="false" inkscape:rounded="0" inkscape:randomized="0" d="m 147.58016,189.49664 -10.79709,-18.70108 -10.79707,-18.70109 21.59415,-1e-5 21.59416,1e-5 -10.79707,18.70109 z" inkscape:transform-center-y="6.2336969" inkscape:transform-center-x="-1.4958869e-06"/>
<path sodipodi:type="star" style="fill:#674176;fill-opacity:1;stroke:#ffffff;stroke-width:1.45006359;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" id="path4512-1-5-2" sodipodi:sides="3" sodipodi:cx="147.58015" sodipodi:cy="-139.62709" sodipodi:r1="24.934784" sodipodi:r2="12.467396" sodipodi:arg1="1.5707963" sodipodi:arg2="2.6179939" inkscape:flatsided="false" inkscape:rounded="0" inkscape:randomized="0" d="m 147.58016,-114.69231 -10.79709,-18.70108 -10.79707,-18.70109 21.59415,-1e-5 21.59416,1e-5 -10.79707,18.70109 z" inkscape:transform-center-y="-6.2336967" transform="scale(1,-1)" inkscape:transform-center-x="-1.4958869e-06"/>
<path sodipodi:type="star" style="fill:#584070;fill-opacity:1;stroke:#ffffff;stroke-width:1.45006359;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" id="path4512-0-6-0" sodipodi:sides="3" sodipodi:cx="82.797675" sodipodi:cy="-177.02925" sodipodi:r1="24.934784" sodipodi:r2="12.467396" sodipodi:arg1="1.5707963" sodipodi:arg2="2.6179939" inkscape:flatsided="false" inkscape:rounded="0" inkscape:randomized="0" d="m 82.797677,-152.09447 -10.797083,-18.70108 -10.797075,-18.70109 21.594157,-10e-6 21.594154,10e-6 -10.797073,18.70109 z" inkscape:transform-center-y="-6.2337069" transform="scale(1,-1)" inkscape:transform-center-x="3.2040961e-06"/>
<path sodipodi:type="star" style="fill:#49376d;fill-opacity:1;stroke:#ffffff;stroke-width:1.45006359;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" id="path4512-0-6-6" sodipodi:sides="3" sodipodi:cx="82.797675" sodipodi:cy="201.96402" sodipodi:r1="24.934784" sodipodi:r2="12.467396" sodipodi:arg1="1.5707963" sodipodi:arg2="2.6179939" inkscape:flatsided="false" inkscape:rounded="0" inkscape:randomized="0" d="m 82.797677,226.8988 -10.797083,-18.70108 -10.797075,-18.70109 21.594157,-1e-5 21.594154,1e-5 -10.797073,18.70109 z" inkscape:transform-center-y="6.2337011" inkscape:transform-center-x="3.2040961e-06"/>
<path sodipodi:type="star" style="fill:#513b66;fill-opacity:1;stroke:#ffffff;stroke-width:1.45006359;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" id="path4512-0-6-0-6" sodipodi:sides="3" sodipodi:cx="104.39186" sodipodi:cy="-214.43147" sodipodi:r1="24.93478" sodipodi:r2="12.467396" sodipodi:arg1="1.5707963" sodipodi:arg2="2.6179939" inkscape:flatsided="false" inkscape:rounded="0" inkscape:randomized="0" d="m 104.39186,-189.49669 -10.797081,-18.70109 -10.797071,-18.70108 21.594152,-10e-6 21.59415,10e-6 -10.79707,18.70109 z" inkscape:transform-center-y="-6.2337188" transform="scale(1,-1)" inkscape:transform-center-x="-3.813203e-06"/>
<path sodipodi:type="star" style="fill:#9e4933;fill-opacity:1;stroke:#ffffff;stroke-width:1.45006359;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" id="path4512-7-0-4" sodipodi:sides="3" sodipodi:cx="104.39186" sodipodi:cy="-139.62709" sodipodi:r1="24.934784" sodipodi:r2="12.467396" sodipodi:arg1="1.5707963" sodipodi:arg2="2.6179939" inkscape:flatsided="false" inkscape:rounded="0" inkscape:randomized="0" d="m 104.39186,-114.69231 -10.797081,-18.70108 -10.797075,-18.70109 21.594156,-1e-5 21.59416,1e-5 -10.79708,18.70109 z" inkscape:transform-center-y="-6.2336913" transform="scale(1,-1)" inkscape:transform-center-x="-3.8132028e-06"/>
<path sodipodi:type="star" style="fill:#473470;fill-opacity:1;stroke:#ffffff;stroke-width:1.45006359;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" id="path4512-0-6-0-6-2" sodipodi:sides="3" sodipodi:cx="61.203517" sodipodi:cy="-214.43143" sodipodi:r1="24.934776" sodipodi:r2="12.467396" sodipodi:arg1="1.5707963" sodipodi:arg2="2.6179939" inkscape:flatsided="false" inkscape:rounded="0" inkscape:randomized="0" d="m 61.203519,-189.49665 -10.797083,-18.70108 -10.797068,-18.70108 21.59415,-1e-5 21.594149,0 -10.797068,18.70109 z" inkscape:transform-center-y="-6.2337222" transform="scale(1,-1)" inkscape:transform-center-x="2.8458428e-06"/>
<path sodipodi:type="star" style="fill:#813535;fill-opacity:1;stroke:#ffffff;stroke-width:1.45006359;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" id="path4512-1-5-48-8" sodipodi:sides="3" sodipodi:cx="39.609363" sodipodi:cy="201.96402" sodipodi:r1="24.93478" sodipodi:r2="12.467394" sodipodi:arg1="1.5707963" sodipodi:arg2="2.6179939" inkscape:flatsided="false" inkscape:rounded="0" inkscape:randomized="0" d="m 39.609364,226.8988 -10.79708,-18.70108 -10.797074,-18.70109 21.594154,0 21.594152,0 -10.797073,18.70109 z" inkscape:transform-center-y="6.2336885" inkscape:transform-center-x="3.0724705e-06"/>
</svg>

Before

Width:  |  Height:  |  Size: 1.5 KiB

After

Width:  |  Height:  |  Size: 14 KiB

View File

@ -17,6 +17,12 @@ window.addEventListener('message', e => {
id: data.id,
height: document.getElementsByTagName('html')[0].scrollHeight,
}, '*');
if (document.fonts && document.fonts.ready) {
document.fonts.ready.then(sizeBioText);
} else {
sizeBioText();
}
});
});
@ -91,6 +97,17 @@ function main() {
detailedStatuses[0].scrollIntoView();
history.replace(location.pathname, { ...location.state, scrolledToDetailedStatus: true });
}
[].forEach.call(document.querySelectorAll('[data-component="Card"]'), (content) => {
const props = JSON.parse(content.getAttribute('data-props'));
ReactDOM.render(<CardContainer locale={locale} {...props} />, content);
});
if (document.fonts && document.fonts.ready) {
document.fonts.ready.then(sizeBioText);
} else {
sizeBioText();
}
});
delegate(document, '.webapp-btn', 'click', ({ target, button }) => {
@ -142,13 +159,7 @@ function main() {
}
});
delegate(document, '#account_note', 'input', ({ target }) => {
const noteCounter = document.querySelector('.note-counter');
if (noteCounter) {
noteCounter.textContent = 160 - length(target.value);
}
});
delegate(document, '#account_note', 'input', sizeBioText);
delegate(document, '#account_avatar', 'change', ({ target }) => {
const avatar = document.querySelector('.card .avatar img');
@ -175,6 +186,20 @@ function main() {
lock.style.display = 'none';
}
});
function sizeBioText() {
const noteCounter = document.querySelector('.note-counter');
const bioTextArea = document.querySelector('#account_note');
if (noteCounter) {
noteCounter.textContent = 413 - length(bioTextArea.value);
}
if (bioTextArea) {
bioTextArea.style.height = 'auto';
bioTextArea.style.height = (bioTextArea.scrollHeight+3) + 'px';
}
}
}
loadPolyfills().then(main).catch(error => {

View File

@ -0,0 +1,63 @@
@import 'application';
/* Allow columns to grow wider as the screen gets
* wider, but don't ever let them get more than
* 400px (some people have a bunch of columns!) */
@media screen and (min-width: 1300px) {
.column {
flex-grow: 1 !important;
max-width: 400px;
}
.drawer {
width: 17%; /* Not part of the flex fun */
max-width: 400px;
min-width: 330px;
}
}
/* Cap the column height at 100vh (fixed an old
* bug someone encountered in safari, but which
* I've seen resurface from time to time) */
.column {
max-height:100vh;
}
/* Don't show outline around statuses if we're in
* mouse or touch mode (rather than keyboard) */
[data-whatinput="mouse"], [data-whatinput="touch"] {
.status__content:focus, .status:focus,
.status__wrapper:focus, .status__content__text:focus {
outline: none;
}
}
/* Show a little arrowey thing after the time in a
* status to signal that you can click it to see
* a detailed view */
.status time:after,
.detailed-status__datetime span:after {
font: normal normal normal 14px/1 FontAwesome;
content: "\00a0\00a0\f08e";
}
/* Don't display the elephant mascot (we have our
* own, thanks) */
.drawer__inner__mastodon {
display: none;
}
/* Let the compose area/drawer be short, but
* expand if necessary */
.drawer .drawer__inner {
overflow: visible;
height:inherit;
background-image: none;
}
.drawer__pager {
overflow-y:auto;
}
@import 'fullwidth-media';

View File

@ -0,0 +1,863 @@
$ui-base-color: #fafafa; // "darkest"
$ui-base-alt: #fafafa;
$ui-base-lighter-color: darken($ui-base-color, 40%); // Lighter darkest
$ui-secondary-color: darken($ui-base-color, 15%); // "lightest"
$ui-primary-color: #5f4770; // "lighter"
$ui-highlight-color: #5f4770; // "vibrant"
$primary-text-color: #333;
$header-color: $ui-primary-color;
$header-text-color: #fff;
$icon-button-inactive-color: lighten(desaturate($ui-primary-color, 20%), 20%);
$about-page-text: $primary-text-color;
@import 'application';
$ui-base-lighter-color: $icon-button-inactive-color;
@import 'mastodon/boost';
$ui-base-lighter-color: darken($ui-base-color, 40%); // Lighter darkest
$gold-star: #dd9d08;
.landing-page__hero {
position:relative;
}
.landing-page__hero::before {
content: " ";
display:block;
background-image:url("../images/handshake.png");
background-size:100% auto;
background-repeat:no-repeat;
background-position:bottom center;
width:600px;
height:600px;
position:absolute;
bottom:-64px;
}
/* about.scss */
.landing-page {
h1, h3, h6 {
color: $about-page-text;
small {
color: lighten($about-page-text, 10%);
span {
font-weight:bold;
color: $about-page-text;
}
}
}
p, li {
color: $about-page-text;
}
.information-board__section span:last-child {
color: $about-page-text;
}
.header-wrapper {
padding-top:0px;
background-size:cover;
background-position:50% 55%;
}
.header-wrapper {
.mascot {
width:500px;
bottom:-52px;
left:-120px;
}
}
.landing-page__logo img {
mix-blend-mode: initial;
}
.container.links {
background-color: $ui-base-color;
border-top: 5px solid $ui-primary-color;
width:100%;
max-width:100%;
padding:0px calc(50% - 400px);
a {
&:hover {
color: lighten($ui-primary-color, 10%);
}
}
}
.container.hero {
.floats {
display:none;
}
.closed-registrations-message, form {
border-top: 50px solid #5f4770;
-webkit-box-shadow: 0 0 6px rgba(0,0,0,.1);
box-shadow: 0 0 6px rgba(0,0,0,.1);
&:before {
font-size: 16px;
font-family:inherit;
line-height:inherit;
font-weight:normal;
color:white;
position:absolute;
top:-35px;
}
}
.closed-registrations-message:before {
content: "Registrations closed";
}
form:before {
content: "Register now";
}
}
#mastodon-timeline {
.column-header {
color:white;
}
p a {
color: $ui-primary-color;
}
}
}
.features-list__row {
.text {
color: $about-page-text;
}
}
.information-board {
.panel {
.panel-header {
color: $primary-text-color;
border-bottom: 1px solid lighten($ui-secondary-color, 4%);
a,
span {
font-weight: 400;
color: lighten($ui-primary-color, 4%);
}
}
}
}
/* components.scss */
.drawer__inner__mastodon {
display: none;
}
.onboarding-modal__page {
p {
color: $primary-text-color;
}
}
.column-header {
background: $header-color;
color: $header-text-color;
border-top-left-radius: 3px;
border-top-right-radius: 3px;
box-shadow: 0px 0px 3px rgba(0,0,0,0.3);
}
.column-header__button {
background: $header-color;
color: $header-text-color;
border-top-right-radius: 3px;
&:hover {
color: darken($ui-base-color, 10%);
}
&.active {
color: $primary-text-color;
background: darken($ui-base-color, 5%);
&:hover {
background: darken($ui-base-color, 5%);
}
}
}
.column-header__back-button {
background: $header-color;
color:$header-text-color;
}
.column-back-button {
background: $header-color;
color:$header-text-color;
}
.column-header__collapsible-inner {
background: darken($ui-base-alt, 2%);
}
.empty-column-indicator,
.error-column {
color: darken($ui-base-lighter-color, 15%);
}
.navigation-bar strong
{
color: $primary-text-color;
}
.compose-form {
.autosuggest-textarea__textarea,
.spoiler-input__input {
color: $primary-text-color;
border: 1px solid $ui-primary-color;
}
.autosuggest-textarea__textarea {
border-bottom-width:0px;
}
.compose-form__modifiers {
border: 1px solid $ui-primary-color;
border-top-width:0px;
}
.compose-form__buttons button.active:last-child {
border-radius:3px;
background: $ui-base-color;
color: $ui-primary-color;
}
.compose-form__buttons-wrapper {
background-color:$ui-primary-color;
.character-counter__wrapper .character-counter {
color: white;
}
}
.icon-button.inverted {
color:white;
&:hover {
color:$ui-secondary-color;
}
}
}
button.icon-button {
&.disabled {
}
}
.icon-button {
&.inverted {
color: darken($ui-base-lighter-color, 10%);
}
&.overlayed {
background: rgba($base-overlay-background, 0.2);
color: rgba($white, 0.7);
&:hover {
background: rgba($base-overlay-background, 0.4);
}
}
&.disabled {
color: desaturate($icon-button-inactive-color, 5%);
&:hover,
&:active,
&:focus {
color: desaturate($icon-button-inactive-color, 5%);
}
}
color: $icon-button-inactive-color;
&:hover,
&:active,
&:focus {
color: darken($icon-button-inactive-color, 5%);
}
}
.icon-button.star-icon,
.icon-button.star-icon:active {
background:transparent;
border:none;
}
.icon-button.star-icon.active {
color: $gold-star;
&:active, &:hover, &:focus {
color: $gold-star;
}
}
.text-icon-button {
color: $white;
&.active {
background: $ui-base-color;
color: $ui-primary-color;
}
&:focus, &:hover {
color: darken($ui-base-color, 3%);
}
}
.status.status-direct {
background: darken($ui-base-alt, 5%);
.icon-button.disabled {
color: lighten($ui-base-lighter-color, 10%);
}
}
.account__header {
& > div {
background: rgba(lighten($ui-base-color, 4%), 0.6);
}
.account__header__content {
color: $primary-text-color;
}
}
.account__header__fields dt {
color: $primary-text-color;
}
.account__section-headline a.active {
color: $primary-text-color;
}
.privacy-dropdown.active .privacy-dropdown__value.active .icon-button {
color: $ui-primary-color;
}
.privacy-dropdown__option {
color: $primary-text-color;
strong {
color: $primary-text-color;
}
&:hover,
&.active {
color: $white;
.privacy-dropdown__option__content {
color: $white;
strong {
color: $white;
}
}
}
}
.emoji-picker-dropdown__menu {
.emoji-search-wrapper {
border-color: darken($ui-base-color, 10%);
}
.emoji-search {
background: darken($ui-base-color, 5%);
border-color: darken($ui-base-color, 10%);
}
.emoji-mart {
color: $ui-primary-color;
}
}
.search-popout {
background: $ui-base-color;
color: $ui-primary-color;
h4 {
color: $ui-primary-color;
}
em {
color: $ui-highlight-color;
}
}
.search__icon .fa.active {
opacity:1.0;
}
.search-results__hashtag {
color: darken($ui-primary-color, 10%);
&:hover {
color: lighten($ui-primary-color, 5%);
}
}
.static-content {
/*color: $primary-text-color;*/
}
#Getting-started {
background: $ui-primary-color;
border-bottom:0px;
color:white;
}
.getting-started {
p {
color: $primary-text-color;
}
a {
color: darken($ui-base-lighter-color, 10%);
}
}
.getting-started__wrapper {
flex: 0 0.5 auto;
}
.getting-started {
.column-link {
background: lighten($ui-primary-color, 5%);
color:$white;
&:hover {
background: lighten($ui-primary-color, 10%);
}
}
}
.column-link__badge {
background: lighten($ui-primary-color, 25%);
}
.column-subheading {
background: darken($ui-primary-color, 5%);
color:$white;
}
.media-spoiler,
.video-player__spoiler.active {
color: $white;
&:hover {
color: darken($white, 5%);
}
}
.status {
border-bottom: 1px solid $ui-secondary-color;
}
.status__relative-time, .status__display-name {
color: darken($ui-base-color, 40%);
}
.status__content {
.status__content__spoiler-link {
background: $ui-base-lighter-color;
&:hover {
background: lighten($ui-base-lighter-color, 5%);
}
}
}
.muted .status__content p {
color: $icon-button-inactive-color;
}
.dropdown-menu__item {
& > a {
color: $primary-text-color;
&:hover, &:active, &:focus {
color: $white;
}
}
}
.dropdown--active .dropdown__content {
& > ul {
background: $ui-base-color;
box-shadow: 0 0 5px rgba($base-shadow-color, 0.2);
& > li > a {
background: $ui-base-color;
color: $primary-text-color;
&:hover {
background: $ui-highlight-color;
color: $ui-base-color;
}
}
}
}
.boost-modal,
.confirmation-modal,
.report-modal,
.actions-modal {
color: $primary-text-color;
}
.boost-modal__action-bar,
.confirmation-modal__action-bar,
.mute-modal__action-bar,
.report-modal__action-bar {
& > div {
color: $ui-primary-color;
}
}
.actions-modal
{
ul {
li:not(:empty) {
a {
color: $primary-text-color;
button {
}
&.active, &:hover, &:active, &:focus {
color: $white;
button {
color: $white;
}
}
}
}
}
}
.report-modal__comment .setting-text {
color: $primary-text-color;
border-bottom-color: lighten($ui-primary-color, 10%);
&:focus, &:active {
color: $primary-text-color;
}
}
.status.light {
.status__content {
color: $primary-text-color;
}
.display-name strong {
color: $primary-text-color;
}
}
.reply-indicator__content {
color: lighten($ui-highlight-color, 30%);
}
.status__content
{
a {
color: $ui-highlight-color;
&:hover {
.fa {
color: darken($ui-base-color, 40%);
}
}
}
}
.detailed-status__display-name {
color: $ui-base-lighter-color;
}
.drawer .drawer__inner {
overflow: visible;
height:inherit;
background:$ui-base-alt;
}
.search__icon .fa {
color: $ui-highlight-color;
}
.drawer__pager {
overflow-y:auto;
}
.drawer .drawer__header {
background: $ui-base-color;
border-radius:3px;
}
.onboarding-modal__page h1 {
background-color: darken($ui-primary-color, 5%);
}
/* forms.scss */
.block-button, .button, button {
background-color: $ui-primary-color;
color: $white;
&.button-alternative {
color: $ui-base-color;
}
&.logo-button {
color: $white;
svg path:first-child {
fill: $white;
}
}
}
.simple_form {
p.hint {
color: $primary-text-color;
}
.block-button, .button, button {
background-color: $ui-primary-color;
color: $white;
&:hover {
background-color: lighten($ui-primary-color, 5%);
}
&:active,
&:focus {
background-color: darken($ui-primary-color, 5%);
}
}
}
/* admin.scss */
.table > thead > tr > th {
border-bottom-color: $ui-secondary-color;
}
.simple_form h4 {
border-bottom: 1px solid $ui-highlight-color;
}
.admin-wrapper {
.content {
h2, p.hint, h4, h6 {
color: $primary-text-color;
}
.muted-hint {
color: $primary-text-color;
}
}
.sidebar {
ul {
ul {
a {
&.selected {
background-color: $ui-primary-color;
color: $white;
&:hover {
background-color: lighten($ui-primary-color, 10%);
}
}
}
}
}
}
}
a.name-tag, .name-tag, a.inline-name-tag, .inline-name-tag {
color: $ui-primary-color;
}
.pagination .current {
color: $ui-primary-color;
}
/* accounts.scss */
.card {
.name {
color: $white;
}
.counter {
.counter-number {
color: $white;
}
}
}
/* stream_entries.scss */
.activity-stream {
.entry {
}
.status.light {
.display-name {
strong {
color: $primary-text-color;
}
}
.status__content {
color: $primary-text-color;
}
}
.detailed-status.light {
.detailed-status__display-name {
.display-name {
strong {
color: $primary-text-color;
}
}
}
.status__content {
color: $primary-text-color;
}
.status-card,
.status-card__title,
.status-card__description {
color: $primary-text-color;
}
}
}
/* accounts.scss */
.card {
.name {
color: darken($ui-primary-color, 15%);
}
.counter {
.counter-number {
color: darken($ui-primary-color, 15%);
}
border-color: $ui-primary-color;
}
}
.account-card {
.counter .counter-number,
& > .detailed-status__display-name .display-name strong
{
color:$primary-text-color;
}
}
.activity-stream-tabs {
a {
color: lighten($ui-primary-color, 10%);
&.active {
color: darken($ui-primary-color, 10%);
}
}
}
/* uncategorized */
@media screen and (min-width: 1300px) {
.column {
flex-grow: 1 !important;
max-width: 400px;
}
.drawer {
width: 17%;
max-width: 400px;
min-width: 330px;
}
}
.status time:after,
.detailed-status__datetime span:after {
font: normal normal normal 14px/1 FontAwesome;
content: "\00a0\00a0\f08e";
}
.column {
max-height:100vh;
& > .scrollable {
background-color: $ui-base-alt;
}
}
.empty-column-indicator, .error-column {
background-color: $ui-base-alt;
}
.media-gallery,
.video-player {
max-height:30vh;
height:30vh !important;
position:relative;
margin-top:20px;
margin-left:-68px;
width: calc(100% + 80px) !important;
max-width: calc(100% + 80px);
}
.detailed-status .media-gallery,
.detailed-status .video-player {
margin-left:-10px;
width: calc(100% + 22px);
max-width: calc(100% + 22px);
}
.video-player video {
transform: unset;
top: unset;
}
.detailed-status .media-spoiler,
.status .media-spoiler {
height:100% !important;
vertical-align:middle;
}
.actions .button.button-alternative {
background: $ui-highlight-color;
color: $white;
&:active,
&:focus,
&:hover {
background-color: lighten($ui-highlight-color, 4%);
}
}
.public-layout .header {
background: $ui-highlight-color;
color: $white;
}
.public-layout .public-account-header__tabs__name h1 {
color: $white;
small {
color: $white;
}
}
.public-layout .header .brand:hover,
.public-layout .header .brand:focus,
.public-layout .header .brand:active {
background: lighten($ui-highlight-color, 5%);
}
.public-layout .container:last-child {
background:$ui-highlight-color;
padding-left: 100px;
padding-right: 100px;
border-radius: 4px;
h4 {
color: white;
}
}
.modal-layout, .modal-layout__mastodon > * {
background: none;
}
.dashboard__widgets a:not(.name-tag) {
color: $primary-text-color;
}

View File

@ -0,0 +1,48 @@
/* So we can position things absolute to it*/
.status__content {
position:relative;
}
/* Use 30% of the viewport height always*/
.detailed-status > .media-spoiler,
.status > .media-spoiler,
.video-player,
.media-gallery {
max-height:30vh;
height:30vh !important;
position:relative;
margin-top:20px;
margin-left:-68px;
width: calc(100% + 80px);
}
/* Unset max-width for spoilers and the video
* player */
.detailed-status > .media-spoiler,
.status > .media-spoiler,
.video-player {
max-width: none;
}
.detailed-status .media-spoiler,
.status .media-spoiler {
height:30vh !important;
vertical-align:middle;
}
.status__video-player-video {
transform:unset;
top:unset;
}
/* Adjust offset and width for detail view */
.detailed-status .media-gallery {
margin-left:-10px;
width: calc(100% + 22px);
}

View File

@ -26,7 +26,7 @@ class ActivityPub::Activity::Accept < ActivityPub::Activity
end
def relay
@relay ||= Relay.find_by(follow_activity_id: object_uri)
@relay ||= Relay.find_by(follow_activity_id: object_uri) unless object_uri.nil?
end
def relay_follow?

View File

@ -92,7 +92,7 @@ class ActivityPub::Activity::Create < ActivityPub::Activity
return if tag['href'].blank?
account = account_from_uri(tag['href'])
account = FetchRemoteAccountService.new.call(tag['href'], id: false) if account.nil?
account = ::FetchRemoteAccountService.new.call(tag['href'], id: false) if account.nil?
return if account.nil?
account.mentions.create(status: status)
end

View File

@ -17,6 +17,8 @@ class ActivityPub::Activity::Delete < ActivityPub::Activity
end
def delete_note
return if object_uri.nil?
@status = Status.find_by(uri: object_uri, account: @account)
@status ||= Status.find_by(uri: @object['atomUri'], account: @account) if @object.is_a?(Hash) && @object['atomUri'].present?

View File

@ -28,7 +28,7 @@ class ActivityPub::Activity::Reject < ActivityPub::Activity
end
def relay
@relay ||= Relay.find_by(follow_activity_id: object_uri)
@relay ||= Relay.find_by(follow_activity_id: object_uri) unless object_uri.nil?
end
def relay_follow?

View File

@ -19,6 +19,8 @@ class ActivityPub::Activity::Undo < ActivityPub::Activity
private
def undo_announce
return if object_uri.nil?
status = Status.find_by(uri: object_uri, account: @account)
status ||= Status.find_by(uri: @object['atomUri'], account: @account) if @object.is_a?(Hash) && @object['atomUri'].present?

View File

@ -90,8 +90,12 @@ class Formatter
private
def html_entities
@html_entities ||= HTMLEntities.new
end
def encode(html)
HTMLEntities.new.encode(html)
html_entities.encode(html)
end
def encode_and_link_urls(html, accounts = nil, options = {})
@ -143,7 +147,7 @@ class Formatter
emoji = emoji_map[shortcode]
if emoji
replacement = "<img draggable=\"false\" class=\"emojione\" alt=\":#{shortcode}:\" title=\":#{shortcode}:\" src=\"#{emoji}\" />"
replacement = "<img draggable=\"false\" class=\"emojione\" alt=\":#{encode(shortcode)}:\" title=\":#{encode(shortcode)}:\" src=\"#{encode(emoji)}\" />"
before_html = shortname_start_index.positive? ? html[0..shortname_start_index - 1] : ''
html = before_html + replacement + html[i + 1..-1]
i += replacement.size - (shortcode.size + 2) - 1
@ -208,20 +212,25 @@ class Formatter
def link_to_mention(entity, linkable_accounts)
acct = entity[:screen_name]
username, domain = acct.split('@')
return link_to_account(acct) unless linkable_accounts
return link_to_account(acct) unless linkable_accounts and domain != "twitter.com"
account = linkable_accounts.find { |item| TagManager.instance.same_acct?(item.acct, acct) }
account ? mention_html(account) : "@#{acct}"
account ? mention_html(account) : "@#{encode(acct)}"
end
def link_to_account(acct)
username, domain = acct.split('@')
if domain == "twitter.com"
return mention_twitter_html(username)
end
domain = nil if TagManager.instance.local_domain?(domain)
account = EntityCache.instance.mention(username, domain)
account ? mention_html(account) : "@#{acct}"
account ? mention_html(account) : "@#{encode(acct)}"
end
def link_to_hashtag(entity)
@ -239,10 +248,14 @@ class Formatter
end
def hashtag_html(tag)
"<a href=\"#{tag_url(tag.downcase)}\" class=\"mention hashtag\" rel=\"tag\">#<span>#{tag}</span></a>"
"<a href=\"#{encode(tag_url(tag.downcase))}\" class=\"mention hashtag\" rel=\"tag\">#<span>#{encode(tag)}</span></a>"
end
def mention_html(account)
"<span class=\"h-card\"><a href=\"#{TagManager.instance.url_for(account)}\" class=\"u-url mention\">@<span>#{account.username}</span></a></span>"
"<span class=\"h-card\"><a href=\"#{encode(TagManager.instance.url_for(account))}\" class=\"u-url mention\">@<span>#{encode(account.username)}</span></a></span>"
end
def mention_twitter_html(username)
"<span class=\"h-card\"><a href=\"https://twitter.com/#{username}\" class=\"u-url mention\">@<span>#{username}@twitter.com</span></a></span>"
end
end

View File

@ -75,7 +75,8 @@ class Account < ApplicationRecord
validates_with UniqueUsernameValidator, if: -> { local? && will_save_change_to_username? }
validates_with UnreservedUsernameValidator, if: -> { local? && will_save_change_to_username? }
validates :display_name, length: { maximum: 30 }, if: -> { local? && will_save_change_to_display_name? }
validates :note, length: { maximum: 160 }, if: -> { local? && will_save_change_to_note? }
validates :note, length: { maximum: 413 }, if: -> { local? && will_save_change_to_note? }
validate :note_has_eight_newlines?, if: -> { local? && will_save_change_to_note? }
validates :fields, length: { maximum: 4 }, if: -> { local? && will_save_change_to_fields? }
# Timelines
@ -266,10 +267,8 @@ class Account < ApplicationRecord
def save_with_optional_media!
save!
rescue ActiveRecord::RecordInvalid
self.avatar = nil
self.header = nil
self[:avatar_remote_url] = ''
self[:header_remote_url] = ''
self.avatar = nil if errors[:avatar].present?
self.header = nil if errors[:header].present?
save!
end
@ -293,6 +292,10 @@ class Account < ApplicationRecord
shared_inbox_url.presence || inbox_url
end
def note_has_eight_newlines?
errors.add(:note, 'Bio can\'t have more then 8 newlines') unless note.count("\n") <= 8
end
class Field < ActiveModelSerializers::Model
attributes :name, :value, :account, :errors

View File

@ -7,7 +7,7 @@
%nav.header
.nav-left
= link_to root_url, class: 'brand' do
= image_tag asset_pack_path('logo_full.svg'), alt: 'Mastodon'
= image_tag asset_pack_path('logo_full_white.svg'), alt: 'Mastodon'
.nav-center
.nav-right
- if user_signed_in?

View File

@ -6,7 +6,7 @@
.fields-group
= f.input :display_name, placeholder: t('simple_form.labels.defaults.display_name'), hint: t('simple_form.hints.defaults.display_name', count: 30 - @account.display_name.size).html_safe
= f.input :note, placeholder: t('simple_form.labels.defaults.note'), hint: t('simple_form.hints.defaults.note', count: 160 - @account.note.size).html_safe
= f.input :note, placeholder: t('simple_form.labels.defaults.note'), hint: t('simple_form.hints.defaults.note', count: 413 - @account.note.size).html_safe
= render 'application/card', account: @account

View File

@ -9,7 +9,7 @@ if ENV['STATSD_ADDR'].present?
::NSA.inform_statsd(statsd) do |informant|
informant.collect(:action_controller, :web)
informant.collect(:active_record, :db)
informant.collect(:cache, :cache)
informant.collect(:active_support_cache, :cache)
informant.collect(:sidekiq, :sidekiq)
end
end

View File

@ -865,8 +865,9 @@ en:
<p>Originally adapted from the <a href="https://github.com/discourse/discourse">Discourse privacy policy</a>.</p>
title: "%{instance} Terms of Service and Privacy Policy"
themes:
default: Scalie Business
contrast: High contrast
default: Mastodon
mastodon: Mastodon
mastodon-light: Mastodon (light)
time:
formats:

View File

@ -1,3 +1,4 @@
default: styles/application.scss
default: styles/cybre-light.scss
mastodon: styles/application.scss
contrast: styles/contrast.scss
mastodon-light: styles/mastodon-light.scss

View File

@ -3,15 +3,10 @@ class CopyStatusStats < ActiveRecord::Migration[5.2]
def up
safety_assured do
Status.unscoped.select('id').find_in_batches(batch_size: 5_000) do |statuses|
execute <<-SQL.squish
INSERT INTO status_stats (status_id, reblogs_count, favourites_count, created_at, updated_at)
SELECT id, reblogs_count, favourites_count, created_at, updated_at
FROM statuses
WHERE id IN (#{statuses.map(&:id).join(', ')})
ON CONFLICT (status_id) DO UPDATE
SET reblogs_count = EXCLUDED.reblogs_count, favourites_count = EXCLUDED.favourites_count
SQL
if supports_upsert?
up_fast
else
up_slow
end
end
end
@ -19,4 +14,41 @@ class CopyStatusStats < ActiveRecord::Migration[5.2]
def down
# Nothing
end
private
def supports_upsert?
version = select_one("SELECT current_setting('server_version_num') AS v")['v'].to_i
version >= 90500
end
def up_fast
say 'Upsert is available, importing counters using the fast method'
Status.unscoped.select('id').find_in_batches(batch_size: 5_000) do |statuses|
execute <<-SQL.squish
INSERT INTO status_stats (status_id, reblogs_count, favourites_count, created_at, updated_at)
SELECT id, reblogs_count, favourites_count, created_at, updated_at
FROM statuses
WHERE id IN (#{statuses.map(&:id).join(', ')})
ON CONFLICT (status_id) DO UPDATE
SET reblogs_count = EXCLUDED.reblogs_count, favourites_count = EXCLUDED.favourites_count
SQL
end
end
def up_slow
say 'Upsert is not available in PostgreSQL below 9.5, falling back to slow import of counters'
# We cannot use bulk INSERT or overarching transactions here because of possible
# uniqueness violations that we need to skip over
Status.unscoped.select('id, reblogs_count, favourites_count, created_at, updated_at').find_each do |status|
begin
params = [[nil, status.id], [nil, status.reblogs_count], [nil, status.favourites_count], [nil, status.created_at], [nil, status.updated_at]]
exec_insert('INSERT INTO status_stats (status_id, reblogs_count, favourites_count, created_at, updated_at) VALUES ($1, $2, $3, $4, $5)', nil, params)
rescue ActiveRecord::RecordNotUnique
next
end
end
end
end

View File

@ -13,7 +13,7 @@ module Mastodon
end
def patch
0
2
end
def pre

View File

@ -20,7 +20,7 @@ module Paperclip
private
def needs_convert?
needs_different_geometry? || needs_different_format?
needs_different_geometry? || needs_different_format? || needs_metadata_stripping?
end
def needs_different_geometry?
@ -31,5 +31,9 @@ module Paperclip
def needs_different_format?
@format.present? && @current_format != @format
end
def needs_metadata_stripping?
@attachment.instance.respond_to?(:local?) && @attachment.instance.local?
end
end
end

Binary file not shown.

Before

Width:  |  Height:  |  Size: 13 KiB

After

Width:  |  Height:  |  Size: 19 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.8 KiB

After

Width:  |  Height:  |  Size: 13 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 8.9 KiB

After

Width:  |  Height:  |  Size: 34 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.4 KiB

After

Width:  |  Height:  |  Size: 9.4 KiB

View File

@ -73,6 +73,30 @@ describe ApplicationController, type: :controller do
end
end
context 'with request older than a day' do
before do
get :success
fake_request = Request.new(:get, request.url)
fake_request.add_headers({ 'Date' => 2.days.ago.utc.httpdate })
fake_request.on_behalf_of(author)
request.headers.merge!(fake_request.headers)
end
describe '#signed_request?' do
it 'returns true' do
expect(controller.signed_request?).to be true
end
end
describe '#signed_request_account' do
it 'returns nil' do
expect(controller.signed_request_account).to be_nil
end
end
end
context 'with body' do
before do
post :success, body: 'Hello world'

View File

@ -596,8 +596,8 @@ RSpec.describe Account, type: :model do
expect(account).to model_have_error_on_field(:display_name)
end
it 'is invalid if the note is longer than 160 characters' do
account = Fabricate.build(:account, note: Faker::Lorem.characters(161))
it 'is invalid if the note is longer than 413 characters' do
account = Fabricate.build(:account, note: Faker::Lorem.characters(414))
account.valid?
expect(account).to model_have_error_on_field(:note)
end
@ -636,8 +636,8 @@ RSpec.describe Account, type: :model do
expect(account).not_to model_have_error_on_field(:display_name)
end
it 'is valid even if the note is longer than 160 characters' do
account = Fabricate.build(:account, domain: 'domain', note: Faker::Lorem.characters(161))
it 'is valid even if the note is longer than 413 characters' do
account = Fabricate.build(:account, domain: 'domain', note: Faker::Lorem.characters(414))
account.valid?
expect(account).not_to model_have_error_on_field(:note)
end