Version 18.32

This commit is contained in:
Antonio Cañas Vargas 2019-01-12 09:37:53 +01:00
parent 7ffed945b6
commit adbc363546
9 changed files with 1025 additions and 0 deletions

1
icon/chart-line.svg Normal file
View File

@ -0,0 +1 @@
<svg aria-hidden="true" data-prefix="fas" data-icon="chart-line" class="svg-inline--fa fa-chart-line fa-w-16" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path fill="#404040" d="M496 384H64V80c0-8.84-7.16-16-16-16H16C7.16 64 0 71.16 0 80v336c0 17.67 14.33 32 32 32h464c8.84 0 16-7.16 16-16v-32c0-8.84-7.16-16-16-16zM464 96H345.94c-21.38 0-32.09 25.85-16.97 40.97l32.4 32.4L288 242.75l-73.37-73.37c-12.5-12.5-32.76-12.5-45.25 0l-68.69 68.69c-6.25 6.25-6.25 16.38 0 22.63l22.62 22.62c6.25 6.25 16.38 6.25 22.63 0L192 237.25l73.37 73.37c12.5 12.5 32.76 12.5 45.25 0l96-96 32.4 32.4c15.12 15.12 40.97 4.41 40.97-16.97V112c.01-8.84-7.15-16-15.99-16z"></path></svg>

After

Width:  |  Height:  |  Size: 684 B

View File

@ -0,0 +1 @@
<svg aria-hidden="true" data-prefix="fas" data-icon="chart-line" class="svg-inline--fa fa-chart-line fa-w-16" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path fill="#404040" d="M496 384H64V80c0-8.84-7.16-16-16-16H16C7.16 64 0 71.16 0 80v336c0 17.67 14.33 32 32 32h464c8.84 0 16-7.16 16-16v-32c0-8.84-7.16-16-16-16zM464 96H345.94c-21.38 0-32.09 25.85-16.97 40.97l32.4 32.4L288 242.75l-73.37-73.37c-12.5-12.5-32.76-12.5-45.25 0l-68.69 68.69c-6.25 6.25-6.25 16.38 0 22.63l22.62 22.62c6.25 6.25 16.38 6.25 22.63 0L192 237.25l73.37 73.37c12.5 12.5 32.76 12.5 45.25 0l96-96 32.4 32.4c15.12 15.12 40.97 4.41 40.97-16.97V112c.01-8.84-7.15-16-15.99-16z"></path></svg>

After

Width:  |  Height:  |  Size: 684 B

View File

@ -0,0 +1,22 @@
<?xml version="1.0"?>
<svg xmlns="http://www.w3.org/2000/svg" height="120" width="120" viewBox="0 0 512 512">
<g transform="scale(2)">
<path opacity=".2" d="m44 15.5c-9.374 0-17 7.626-17 17v200c0 9.37 7.626 17 17 17h176c9.38 0 17-7.63 17-17v-200c0-9.374-7.62-17-17-17h-176z"/>
<path opacity=".2" d="m42 13.5c-9.374 0-17 7.626-17 17v200c0 9.37 7.626 17 17 17h176c9.38 0 17-7.63 17-17v-200c0-9.374-7.62-17-17-17h-176z"/>
<path opacity=".2" d="m40 12.5c-9.374 0-17 7.626-17 17v200c0 9.37 7.626 17 17 17h176c9.38 0 17-7.63 17-17v-200c0-9.374-7.62-17-17-17h-176z"/>
<linearGradient id="XMLID_7_" x1="-406.5" gradientUnits="userSpaceOnUse" y1="512.5" gradientTransform="matrix(1,0,0,-1,535.5,523.5)" x2="-406.5" y2="278.5">
<stop stop-color="#494949" offset="0"/>
<stop offset="1"/>
</linearGradient>
<path d="m41 11c-9.374 0-17 7.626-17 17v200c0 9.37 7.626 17 17 17h176c9.38 0 17-7.63 17-17v-200c0-9.374-7.62-17-17-17h-176z" fill="url(#XMLID_7_)"/>
<path d="m28 228c0 6.63 5.373 12 12 12h176c6.63 0 12-5.37 12-12v-200c0-6.627-5.37-12-12-12h-176c-6.627 0-12 5.373-12 12v200z" fill="#fff"/>
<linearGradient id="XMLID_8_" x1="-506.4" gradientUnits="userSpaceOnUse" y1="494.4" gradientTransform="matrix(1,0,0,-1,535.5,523.5)" x2="-308.6" y2="296.6">
<stop stop-color="#fff" offset="0"/>
<stop stop-color="#DADADA" offset="1"/>
</linearGradient>
<path d="m40 21c-3.86 0-7 3.14-7 7v200c0 3.86 3.14 7 7 7h176c3.86 0 7-3.14 7-7v-200c0-3.86-3.14-7-7-7h-176z" fill="url(#XMLID_8_)"/>
<rect id="_x3C_Slice_x3E_" height="256" width="256" y="0" x="0" fill="none"/>
</g>
<path stroke="#a2a2a2" stroke-width="9.4" d="m91.47 324.9 25.18-44.3 24.27 32.74 48.55-107.4 39.08 77.87 18.95-47.74 40.97 123.6 64.24-207.9 71.26 155.7" fill="none"/>
<path stroke="#f00" stroke-width="9.4" d="m84.57 319.5 25.18-44.31 24.27 32.75 48.55-107.4 39.07 77.87 18.95-47.74 40.97 123.6 64.25-207.9 71.25 155.7" fill="none"/>
</svg>

After

Width:  |  Height:  |  Size: 1.9 KiB

View File

@ -0,0 +1,500 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
version="1.0"
width="128"
height="128"
id="svg3425">
<defs
id="defs3427">
<linearGradient
id="linearGradient3932">
<stop
style="stop-color:#00219f;stop-opacity:1"
offset="0"
id="stop3934" />
<stop
style="stop-color:#003fb3;stop-opacity:1"
offset="1"
id="stop3936" />
</linearGradient>
<linearGradient
id="linearGradient3924">
<stop
style="stop-color:#002ef0;stop-opacity:1"
offset="0"
id="stop3926" />
<stop
style="stop-color:#0c1680;stop-opacity:1"
offset="1"
id="stop3928" />
</linearGradient>
<linearGradient
id="linearGradient3914">
<stop
style="stop-color:#000e93;stop-opacity:1"
offset="0"
id="stop3916" />
<stop
style="stop-color:#0040b4;stop-opacity:1"
offset="1"
id="stop3918" />
</linearGradient>
<linearGradient
id="linearGradient3898">
<stop
style="stop-color:#ffffff;stop-opacity:0.75294119"
offset="0"
id="stop3900" />
<stop
style="stop-color:#ffffff;stop-opacity:0"
offset="1"
id="stop3902" />
</linearGradient>
<linearGradient
id="linearGradient3890">
<stop
style="stop-color:#f93e20;stop-opacity:1"
offset="0"
id="stop3892" />
<stop
style="stop-color:#ff988e;stop-opacity:1"
offset="1"
id="stop3894" />
</linearGradient>
<linearGradient
id="linearGradient3882">
<stop
style="stop-color:#ffe535;stop-opacity:1"
offset="0"
id="stop3884" />
<stop
style="stop-color:#ffcf47;stop-opacity:1"
offset="1"
id="stop3886" />
</linearGradient>
<linearGradient
id="linearGradient3862">
<stop
style="stop-color:#ffffff;stop-opacity:0"
offset="0"
id="stop3864" />
<stop
style="stop-color:#ffffff;stop-opacity:0.50196081"
offset="0.5"
id="stop3870" />
<stop
style="stop-color:#ffffff;stop-opacity:0"
offset="1"
id="stop3866" />
</linearGradient>
<linearGradient
id="linearGradient3850">
<stop
style="stop-color:#0456c1;stop-opacity:1"
offset="0"
id="stop3852" />
<stop
style="stop-color:#428bfe;stop-opacity:1"
offset="1"
id="stop3854" />
</linearGradient>
<linearGradient
id="linearGradient3808">
<stop
style="stop-color:#478dff;stop-opacity:1"
offset="0"
id="stop3810" />
<stop
style="stop-color:#478dff;stop-opacity:1"
offset="0.5"
id="stop3816" />
<stop
style="stop-color:#97ceff;stop-opacity:1"
offset="1"
id="stop3812" />
</linearGradient>
<linearGradient
id="linearGradient3776">
<stop
style="stop-color:#ffffff;stop-opacity:1"
offset="0"
id="stop3778" />
<stop
style="stop-color:#ffffff;stop-opacity:0.49803922"
offset="0.28"
id="stop3784" />
<stop
style="stop-color:#ffffff;stop-opacity:0"
offset="0.75581729"
id="stop3786" />
<stop
style="stop-color:#ffffff;stop-opacity:0"
offset="1"
id="stop3780" />
</linearGradient>
<linearGradient
id="linearGradient3757">
<stop
style="stop-color:#ffd600;stop-opacity:1"
offset="0"
id="stop3759" />
<stop
style="stop-color:#ffaf20;stop-opacity:1"
offset="0.76999998"
id="stop3767" />
<stop
style="stop-color:#ffaf20;stop-opacity:1"
offset="0.99000001"
id="stop3765" />
<stop
style="stop-color:#ffb74c;stop-opacity:1"
offset="1"
id="stop3761" />
</linearGradient>
<linearGradient
id="linearGradient3749">
<stop
style="stop-color:#c56200;stop-opacity:1"
offset="0"
id="stop3751" />
<stop
style="stop-color:#895326;stop-opacity:1"
offset="1"
id="stop3753" />
</linearGradient>
<linearGradient
id="linearGradient3739">
<stop
style="stop-color:#8ae162;stop-opacity:1"
offset="0"
id="stop3741" />
<stop
style="stop-color:#8ae162;stop-opacity:1"
offset="0.58999997"
id="stop3743" />
<stop
style="stop-color:#d2ffd4;stop-opacity:1"
offset="1"
id="stop3745" />
</linearGradient>
<linearGradient
id="linearGradient3685">
<stop
style="stop-color:#ff6666;stop-opacity:1"
offset="0"
id="stop3687" />
<stop
style="stop-color:#ff6666;stop-opacity:1"
offset="0.58999997"
id="stop3689" />
<stop
style="stop-color:#ff9797;stop-opacity:1"
offset="1"
id="stop3691" />
</linearGradient>
<linearGradient
id="linearGradient3634">
<stop
style="stop-color:#000080;stop-opacity:1"
offset="0"
id="stop3636" />
<stop
style="stop-color:#0101ff;stop-opacity:1"
offset="1"
id="stop3638" />
</linearGradient>
<linearGradient
id="linearGradient3617">
<stop
style="stop-color:#57adff;stop-opacity:1"
offset="0"
id="stop3619" />
<stop
style="stop-color:#57adff;stop-opacity:1"
offset="0.56999999"
id="stop3625" />
<stop
style="stop-color:#ffffff;stop-opacity:1"
offset="1"
id="stop3621" />
</linearGradient>
<linearGradient
x1="376.11914"
y1="484.75916"
x2="406.11548"
y2="514.60162"
id="linearGradient3669"
xlink:href="#linearGradient3634"
gradientUnits="userSpaceOnUse" />
<radialGradient
cx="416.98761"
cy="488.86465"
r="18.15386"
fx="416.98761"
fy="488.86465"
id="radialGradient3672"
xlink:href="#linearGradient3617"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(-2.8308314,0,0,-2.8313164,1604.9601,1873.5695)" />
<radialGradient
cx="416.98761"
cy="488.86465"
r="18.15386"
fx="416.98761"
fy="488.86465"
id="radialGradient3714"
xlink:href="#linearGradient3685"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(-2.8308314,0,0,-2.8313164,1624.3025,1911.7204)" />
<radialGradient
cx="416.98761"
cy="488.86465"
r="18.15386"
fx="416.98761"
fy="488.86465"
id="radialGradient3733"
xlink:href="#linearGradient3739"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(-2.8308314,0,0,-2.8313164,1585.6161,1904.9636)" />
<linearGradient
x1="85.744354"
y1="83.667435"
x2="88.730698"
y2="86.653778"
id="linearGradient3755"
xlink:href="#linearGradient3749"
gradientUnits="userSpaceOnUse" />
<linearGradient
x1="24.461538"
y1="17.000002"
x2="24.461538"
y2="92.633362"
id="linearGradient3763"
xlink:href="#linearGradient3757"
gradientUnits="userSpaceOnUse" />
<linearGradient
x1="52.9375"
y1="19.375"
x2="52.9375"
y2="79.453911"
id="linearGradient3782"
xlink:href="#linearGradient3776"
gradientUnits="userSpaceOnUse" />
<radialGradient
cx="113.5231"
cy="90.393906"
r="32.591949"
fx="113.5231"
fy="90.393906"
id="radialGradient3835"
xlink:href="#linearGradient3808"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(-3.2669625,0,0,-3.2653159,484.39882,385.55857)" />
<linearGradient
x1="72.28727"
y1="92.45826"
x2="7.010829"
y2="92.45826"
id="linearGradient3856"
xlink:href="#linearGradient3850"
gradientUnits="userSpaceOnUse" />
<linearGradient
x1="23.61437"
y1="110.26138"
x2="55.851425"
y2="70.6661"
id="linearGradient3868"
xlink:href="#linearGradient3862"
gradientUnits="userSpaceOnUse" />
<linearGradient
x1="43.578697"
y1="85.191872"
x2="29.276016"
y2="71.029266"
id="linearGradient3888"
xlink:href="#linearGradient3882"
gradientUnits="userSpaceOnUse" />
<linearGradient
x1="37.71328"
y1="77.701668"
x2="9.6057692"
y2="84.044724"
id="linearGradient3896"
xlink:href="#linearGradient3890"
gradientUnits="userSpaceOnUse" />
<linearGradient
x1="8.0187635"
y1="75.827812"
x2="32.12162"
y2="75.827812"
id="linearGradient3904"
xlink:href="#linearGradient3898"
gradientUnits="userSpaceOnUse" />
<filter
id="filter3910">
<feGaussianBlur
id="feGaussianBlur3912"
stdDeviation="0.50304688"
inkscape:collect="always" />
</filter>
<linearGradient
x1="339.29852"
y1="584.42322"
x2="361.40128"
y2="537.9906"
id="linearGradient3920"
xlink:href="#linearGradient3914"
gradientUnits="userSpaceOnUse" />
<linearGradient
x1="7.3425112"
y1="75.682533"
x2="56.38224"
y2="75.682533"
id="linearGradient3930"
xlink:href="#linearGradient3924"
gradientUnits="userSpaceOnUse" />
<linearGradient
x1="7.3425112"
y1="78.8311"
x2="56.38224"
y2="78.8311"
id="linearGradient3938"
xlink:href="#linearGradient3932"
gradientUnits="userSpaceOnUse" />
</defs>
<g
transform="translate(-311,-468.36218)"
id="layer1">
<path
d="M 333.47525,482.40018 C 328.99261,482.40018 325.319,486.04254 325.319,490.52518 L 325.319,574.99393 C 325.319,579.47657 328.99261,583.15019 333.47525,583.15018 L 417.6315,583.15018 C 422.11414,583.15018 425.78775,579.47656 425.78775,574.99393 L 425.78775,490.52518 C 425.78775,486.04254 422.11414,482.40018 417.6315,482.40018 L 333.47525,482.40018 z "
style="opacity:0.33000004;fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:4;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter3910)"
id="path3798" />
<rect
width="96.461548"
height="96.769234"
ry="6.1538463"
x="15.230769"
y="14.923077"
transform="translate(311,468.36218)"
style="opacity:1;fill:url(#linearGradient3763);fill-opacity:1;fill-rule:evenodd;stroke:url(#linearGradient3755);stroke-width:4;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
id="rect3747" />
<rect
width="22.24918"
height="18.944365"
x="433.62595"
y="269.86517"
transform="matrix(0.8159336,0.5781457,0,1,0,0)"
style="fill:#66cc33;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
id="rect3701" />
<path
d="M 22.78125,19.375 C 21.758481,19.375 20.9375,20.19598 20.9375,21.21875 L 20.9375,46.9375 C 38.18526,64.408605 56.100851,64.12844 70.15625,66.3125 L 106,54.15625 L 106,21.21875 C 106,20.195981 105.17902,19.375001 104.15625,19.375 L 22.78125,19.375 z "
transform="translate(311,468.36218)"
style="opacity:1;fill:url(#linearGradient3782);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:4;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
id="rect3771" />
<rect
width="22.24918"
height="63.752125"
x="-501.83206"
y="779.57104"
transform="matrix(-0.8159336,0.5781457,0,1,0,0)"
style="fill:#006dff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
id="rect3601" />
<path
d="M 371.96855,507.06703 L 353.38136,520.21563 L 353.38136,538.89536 L 371.96855,552.04396 L 390.55574,538.89536 L 390.55574,520.21563 L 371.96855,507.06703 z "
style="fill:none;fill-opacity:1;fill-rule:evenodd;stroke:#008000;stroke-width:1.51999998;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
id="path3705" />
<path
d="M 390.11766,520.83305 L 371.96381,533.69632 L 353.80994,520.83305 L 371.96381,507.96978 L 390.11766,520.83305 z "
style="fill:url(#radialGradient3733);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
id="path3707" />
<rect
width="22.249178"
height="63.752125"
x="457.33368"
y="225.0336"
transform="matrix(0.8159336,0.5781457,0,1,0,0)"
style="fill:#57adff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
id="rect3599" />
<path
d="M 409.46161,489.43901 L 391.30776,502.30228 L 373.15389,489.43901 L 391.30776,476.57574 L 409.46161,489.43901 z "
style="fill:url(#radialGradient3672);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
id="rect3603" />
<path
d="M 391.3125,475.51915 L 372.72531,488.66775 L 372.72531,552.57824 L 391.3125,565.72684 L 409.89969,552.57824 L 409.89969,488.66775 L 391.3125,475.51915 z "
style="fill:none;fill-opacity:1;fill-rule:evenodd;stroke:url(#linearGradient3669);stroke-width:1.51999998;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
id="rect3627" />
<rect
width="22.24918"
height="39.630863"
x="481.03961"
y="249.13881"
transform="matrix(0.8159336,0.5781457,0,1,0,0)"
style="fill:#ff4444;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
id="rect3654" />
<rect
width="22.249182"
height="39.412754"
x="-525.53796"
y="831.30524"
transform="matrix(-0.8159336,0.5781457,0,1,0,0)"
style="fill:#cf0000;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
id="rect3652" />
<path
d="M 428.80405,527.58989 L 410.6502,540.45316 L 392.49633,527.58989 L 410.6502,514.72662 L 428.80405,527.58989 z "
style="fill:url(#radialGradient3714);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
id="path3656" />
<path
d="M 410.65494,513.82388 L 392.06775,526.97248 L 392.06775,566.26759 L 410.65494,579.41619 L 429.24213,566.26759 L 429.24213,526.97248 L 410.65494,513.82388 z "
style="fill:none;fill-opacity:1;fill-rule:evenodd;stroke:#800000;stroke-width:1.51999998;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
id="path3658" />
<path
d="M 72.28727 90.393906 A 32.591949 23.120783 0 1 1 7.1033707,90.393906 A 32.591949 23.120783 0 1 1 72.28727 90.393906 z"
transform="matrix(1.0021368,0,0,1.0120482,311.68123,472.84437)"
style="opacity:1;fill:url(#linearGradient3856);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:4;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
id="path3846" />
<path
d="M 72.28727 90.393906 A 32.591949 23.120783 0 1 1 7.1033707,90.393906 A 32.591949 23.120783 0 1 1 72.28727 90.393906 z"
transform="matrix(1.0021368,0,0,1.0120482,311.68123,466.29812)"
style="opacity:1;fill:url(#radialGradient3835);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:4;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
id="path3806" />
<path
d="M 55.991296,70.370721 A 32.591949,23.120783 0 0 1 23.399346,110.41709"
transform="matrix(0.9787756,0,0,0.9884559,312.60856,468.43072)"
style="opacity:1;fill:none;fill-opacity:1;fill-rule:evenodd;stroke:url(#linearGradient3868);stroke-width:0.99296945;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
id="path3860" />
<path
d="M 8.3354808,84.096766 A 32.591949,23.120783 0 0 1 31.77289,67.966598 L 39.69532,90.393906 z"
transform="matrix(1.0021368,0,0,1.0120482,311.68123,466.29812)"
style="opacity:1;fill:url(#linearGradient3896);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1.98593891;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
id="path3878" />
<path
d="M 31.768122,67.967446 A 32.591949,23.120783 0 0 1 55.389271,70.130147 L 39.69532,90.393906 z"
transform="matrix(1.0021368,0,0,1.0120482,311.68123,466.29812)"
style="opacity:1;fill:url(#linearGradient3888);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1.98593891;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
id="path3880" />
<path
d="M 8.5152485,83.662499 A 32.591949,23.120783 0 0 1 31.625135,67.993126"
transform="matrix(0.9787756,0,0,0.9884559,312.80591,469.06786)"
style="opacity:1;fill:none;fill-opacity:1;fill-rule:evenodd;stroke:url(#linearGradient3904);stroke-width:0.99296945;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
id="path3858" />
<path
d="M 319.68087,551.40027 C 318.89878,553.41595 318.48076,555.54032 318.48076,557.73494 L 318.48076,567.4665 C 318.48076,575.73166 333.2564,587.17243 351.46875,587.17243 C 369.6811,587.17243 384.45674,574.89559 384.45674,567.04866 L 384.45674,557.73494 C 384.45674,548.83783 377.58638,541.09519 367.44085,537.06954"
style="opacity:1;fill:none;fill-opacity:1;fill-rule:evenodd;stroke:url(#linearGradient3920);stroke-width:2;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
id="path3837" />
<path
d="M 8.6636462,83.325816 A 32.591949,23.120783 0 0 1 55.389271,70.130147"
transform="matrix(1.0105336,0,0,1.020528,311.34203,465.52322)"
style="opacity:1;fill:none;fill-opacity:1;fill-rule:evenodd;stroke:url(#linearGradient3930);stroke-width:1.98593891;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
id="path3922" />
<path
d="M 55.389271,70.130147 L 39.69532,90.393906 L 8.3354808,84.096766"
transform="matrix(1.0105336,0,0,1.020528,311.34203,465.52322)"
style="fill:none;fill-opacity:1;fill-rule:evenodd;stroke:url(#linearGradient3938);stroke-width:1.98593891;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
id="path3872" />
</g>
</svg>

After

Width:  |  Height:  |  Size: 20 KiB

1
icon/question.svg Normal file
View File

@ -0,0 +1 @@
<svg aria-hidden="true" data-prefix="fas" data-icon="question" class="svg-inline--fa fa-question fa-w-12" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 384 512"><path fill="#404040" d="M202.021 0C122.202 0 70.503 32.703 29.914 91.026c-7.363 10.58-5.093 25.086 5.178 32.874l43.138 32.709c10.373 7.865 25.132 6.026 33.253-4.148 25.049-31.381 43.63-49.449 82.757-49.449 30.764 0 68.816 19.799 68.816 49.631 0 22.552-18.617 34.134-48.993 51.164-35.423 19.86-82.299 44.576-82.299 106.405V320c0 13.255 10.745 24 24 24h72.471c13.255 0 24-10.745 24-24v-5.773c0-42.86 125.268-44.645 125.268-160.627C377.504 66.256 286.902 0 202.021 0zM192 373.459c-38.196 0-69.271 31.075-69.271 69.271 0 38.195 31.075 69.27 69.271 69.27s69.271-31.075 69.271-69.271-31.075-69.27-69.271-69.27z"></path></svg>

After

Width:  |  Height:  |  Size: 794 B

255
swad_file_MIME.c Normal file
View File

@ -0,0 +1,255 @@
// swad_file_MIME.c: allowed MIME types in files in file browsers
/*
SWAD (Shared Workspace At a Distance),
is a web platform developed at the University of Granada (Spain),
and used to support university teaching.
This file is part of SWAD core.
Copyright (C) 1999-2019 Antonio Cañas Vargas
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU Affero General Public License as
published by the Free Software Foundation, either version 3 of the
License, or (at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU Affero General Public License for more details.
You should have received a copy of the GNU Affero General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
/*****************************************************************************/
/********************************** Headers **********************************/
/*****************************************************************************/
#include <string.h> // For strcmp
#include "swad_file_MIME.h"
/*****************************************************************************/
/*************************** Internal constants ******************************/
/*****************************************************************************/
/* MIME types allowed for uploades files */
const char *MIM_MIMETypesAllowed[] =
{
"application/", //
"application/acrobat", // PDF
"application/arj", // compressed archive arj
"application/binary", //
"application/bzip2", // Bzip 2 UNIX Compressed File
"application/cdr", // Corel Draw (CDR)
"application/coreldraw", // Corel Draw (CDR)
"application/css-stylesheet", // Hypertext Cascading Style Sheet
"application/csv", // CSV, Comma Separated Values
"application/data", //
"application/download", // zip files in Firefox caused by an error?
"application/excel", // Microsoft Excel xls
"application/finale", // Finale .mus
"application/force", // PDF uploaded from Firefox
"application/force-download", // RAR uploaded from Firefox
"application/futuresplash", // Flash
"application/gzip", // GNU ZIP gz, gzip
"application/gzip-compressed", // GNU ZIP gz, gzip
"application/gzipped", // GNU ZIP gz, gzip
"application/msaccess", // Microsoft Access mdb
"application/msexcel", // Microsoft Excel xla, xls, xlt, xlw
"application/mspowerpoint", // Microsoft PowerPoint pot, pps, ppt
"application/mathematica", // Mathematica
"application/matlab", // Matlab
"application/mfile", // Matlab
"application/mpp", // Microsoft Project mpp
"application/msproj", // Microsoft Project mpp
"application/msproject", // Microsoft Project mpp
"application/msword", // Microsoft Word doc, word, w6w
"application/mswrite", // Microsoft Write wri
"application/octet", // uninterpreted binary bin
"application/octet-binary",
"application/octetstream", // uninterpreted binary bin
"application/octet-stream", // uninterpreted binary bin
"application/pdf", // Adobe Acrobat pdf
"application/postscript", // PostScript ai, eps, ps
"application/powerpoint", // Microsoft PowerPoint pot, pps, ppt
"application/rar", // RAR
"application/rtf", // RTF
"application/self-extracting", // Compressed file, self-extracting
"application/stream", // PDF in Mac?
"application/unknown",
"application/vnd.fdf", // Forms Data Format
"application/vnd.geogebra.file", // GeoGebra .ggb
"application/vnd.geogebra.tool", // GeoGebra .ggt
"application/vnd.msexcel", // Microsoft Excel .xls
"application/vnd.ms-excel", // Microsoft Excel .xls
"application/vnd.ms-powerpoint", // Microsoft PowerPoint .ppt or .pps
"application/vnd.ms-project", // Microsoft Project .mpp
"application/vnd.ms-word", // Microsoft Word .doc
"application/vnd.ms-word.template.macroenabled.12", // Microsoft Word template .dotm
"application/vnd.oasis.opendocument.text", // OpenOffice Text .odt
"application/vnd.oasis.opendocument.spreadsheet", // OpenOffice Hoja of cálculo .ods
"application/vnd.oasis.opendocument.presentation", // OpenOffice Presentación .odp
"application/vnd.oasis.opendocument.graphics", // OpenOffice Dibujo .odg
"application/vnd.oasis.opendocument.chart", // OpenOffice Gráfica .odc
"application/vnd.oasis.opendocument.formula", // OpenOffice Fórmula matemática .odf
"application/vnd.oasis.opendocument.database", // OpenOffice database .odb
"application/vnd.oasis.opendocument.image", // OpenOffice Imagen .odi
"application/vnd.oasis.opendocument.text-master", // OpenOffice Documento maestro .odm
"application/vnd.oasis.opendocument.text-template", // OpenOffice Text .ott
"application/vnd.oasis.opendocument.spreadsheet-template", // OpenOffice Hoja of cálculo .ots
"application/vnd.oasis.opendocument.presentation-template", // OpenOffice Presentación .otp
"application/vnd.oasis.opendocument.graphics-template", // OpenOffice Dibujo .otg
"application/vnd.openxmlformats-officedocument.presentationml.presentation", // Power Point Microsoft Office Open XML Format Presentation Slide Show .pptx
"application/vnd.openxmlformats-officedocument.presentationml.slideshow", // Power Point Microsoft Office Open XML Format Presentation Slide Show .ppsx
"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet", // Excel Microsoft Office Open XML Format Spreadsheet .xlsx
"application/vnd.openxmlformats-officedocument.wordprocessingml.document", // Word Microsoft Office Open XML Format Document .docx
"application/vnd.pdf", // PDF
"application/x-7z-compressed", // 7 zip compressed file
"application/x-bz2", // Bzip 2 UNIX Compressed File
"application/x-bzip", // Bzip 2 UNIX Compressed File
"application/x-cdr", // Corel Draw (CDR)
"application/x-compress", // GNU ZIP gz, gzip
"application/x-compressed", // GNU ZIP gz, gzip, Bzip 2 UNIX Compressed File
"application/x-compressed-tar", // TGZ
"application/x-coreldraw", // Corel Draw (CDR)
"application/x-dos_ms_project", // Microsoft Project mpp
"application/x-download", // RAR
"application/x-file-download", // PDF
"application/x-forcedownload", // PDF
"application/x-gtar", // GNU tar gtar
"application/x-gunzip", // GNU ZIP gz, gzip
"application/x-gzip", // GNU ZIP gz, gzip
"application/x-latex", // LateX latex (LateX)
"application/x-midi", // MIDI mid
"application/x-msdos-program", // MSDOS program
"application/x-msdownload", // dll, exe
"application/x-mspowerpoint", // Microsoft PowerPoint pot, pps, ppt
"application/x-msproject", // Microsoft Project mpp
"application/x-ms-project", // Microsoft Project mpp
"application/x-msword", // PDF?
"application/x-mswrite", // PDF
"application/x-octet-stream", // PDF
"application/x-rar", // .rar
"application/x-shockwave-flash", // Flash
"application/x-shockwave-flash2-preview", // Flash
"application/x-unknown", // Unknown file type
"application/x-vnd.oasis.opendocument.chart", // OpenOffice Gráfica .odc
"application/x-vnd.oasis.opendocument.database", // OpenOffice database .odb
"application/x-vnd.oasis.opendocument.formula", // OpenOffice Fórmula matemática .odf
"application/x-vnd.oasis.opendocument.graphics", // OpenOffice Dibujo .odg
"application/x-vnd.oasis.opendocument.graphics-template", // OpenOffice Dibujo .otg
"application/x-vnd.oasis.opendocument.image", // OpenOffice Imagen .odi
"application/x-vnd.oasis.opendocument.presentation", // OpenOffice Presentación .odp
"application/x-vnd.oasis.opendocument.presentation-template",// OpenOffice Presentación .otp
"application/x-vnd.oasis.opendocument.spreadsheet", // OpenOffice Hoja of cálculo .ods
"application/x-vnd.oasis.opendocument.spreadsheet-template", // OpenOffice Hoja of cálculo .ots
"application/x-vnd.oasis.opendocument.text", // OpenOffice Text .odt
"application/x-vnd.oasis.opendocument.text-master", // OpenOffice Documento maestro .odm
"application/x-vnd.oasis.opendocument.text-template", // OpenOffice Text .ott
"application/x-pdf", // PDF
"application/x-shockwave-flash", // Macromedia Shockwave swf
"application/x-spss", // SPSS File sav spp sbs sps spo
"application/x-rar-compressed", // RAR archive rar
"application/x-tar", // 4.3BSD tar format tar
"application/x-tex", // TeX tex (LateX)
"application/x-tgz", // TGZ
"application/x-troff", // .s assembler source file
"application/x-zip", // ZIP archive zip
"application/x-zip-compressed", // ZIP archive zip
"application/zip", // ZIP archive zip
"audio/basic", // BASIC audio (u-law) au, snd
"audio/mp4", // MPEG-4
"audio/mpeg", // MP3
"audio/midi", // MIDI mid, midi
"audio/x-aiff", // AIFF audio aif, aifc, aiff
"audio/x-mpeg", // MPEG audio mp3
"audio/x-ms-wma", // WMA (Windows Media Audio File)
"audio/x-pn-realaudio", // RealAudio ra, ram
"audio/x-pn-realaudio-plugin", // RealAudio plug-in rpm
"audio/x-voice", // Voice voc
"audio/x-wav", // Microsoft Windows WAVE audio wav
"binary/octet-stream", // uninterpreted binary bin
"document/unknown", // Some bowsers send this (?)
"file/unknown", // Some bowsers send this (?)
"gzip/document", // GNU ZIP gz, gzip
"image/bmp", // Bitmap bmp
"image/cdr", // Corel Draw (CDR)
"image/gif", // GIF image gif
"image/jpeg", // JPEG image jpe, jpeg, jpg
"image/pdf", // PDF
"image/pjpeg", // JPEG image jpe, jpeg, jpg
"image/pict", // Macintosh PICT pict
"image/png", // Portable Network Graphic png
"image/tiff", // TIFF image tif, tiff
"image/vnd.rn-realflash", // Flash
"image/x-cdr", // Corel Draw (CDR)
"image/x-cmu-raster", // CMU raster ras
"image/x-eps", // Imagen postcript
"image/x-png", // Portable Network Graphic png
"image/x-portable-anymap", // PBM Anymap format pnm
"image/x-portable-bitmap", // PBM Bitmap format pbm
"image/x-portable-graymap", // PBM Graymap format pgm
"image/x-portable-pixmap", // PBM Pixmap format ppm
"image/x-rgb", // RGB image rgb
"image/x-xbitmap", // X Bitmap xbm
"image/x-xpixmap", // X Pixmap xpm
"image/x-xwindowdump", // X Window System dump xwd
"message/rfc822", // Files .mht and .mhtml
"mime/pdf", // Adobe Acrobat pdf
"multipart/x-gzip", // GNU ZIP archive gzip
"multipart/x-zip", // PKZIP archive zip
"octet/pdf", // PDF
"text/anytext", // CSV, Comma Separated Values?
"text/comma-separated-values", // CSV, Comma Separated Values
"text/css", // Hypertext Cascading Style Sheet
"text/csv", // CSV, Comma Separated Values
"text/html", // HTML htm, html, php
"text/pdf", // PDF
"text/plain", // plain text C, cc, h, txt. BAS
"text/richtext", // RTF
"text/xml", //
"text/x-c", // Source code in C
"text/x-chdr", // Source code in C
"text/x-csrc", // Source code in C
"text/x-c++src", // Source code in C++
"text/x-latex", // LateX
"text/x-objcsrc", // Source code
"text/x-pdf", // PDF
"video/3gpp", // Video Android mobile
"video/avi", // AVI
"video/mp4", // MPEG-4
"video/mpeg", // MPEG video mpe, mpeg, mpg
"video/msvideo", // Microsoft Windows video avi
"video/quicktime", // QuickTime video mov, qt
"video/unknown", // ?
"video/x-ms-asf", // WMA (Windows Media Audio File)
"video/x-ms-wmv", // WMV (Windows Media File)
"video/x-msvideo", // AVI
"x-world/x-vrml", // VRML Worlds wrl
"x-java", // Source code in Java
"zz-application/zz-winassoc-cdr", // Corel Draw (CDR)
"zz-application/zz-winassoc-mpp" // Microsoft Project mpp
};
const unsigned MIM_NUM_MIME_TYPES_ALLOWED = sizeof (MIM_MIMETypesAllowed) /
sizeof (MIM_MIMETypesAllowed[0]);
/*****************************************************************************/
/******** Check if MIME type is allowed **********/
/*****************************************************************************/
bool MIM_CheckIfMIMETypeIsAllowed (const char *MIMEType)
{
unsigned Type;
/* Check type MIME */
for (Type = 0;
Type < MIM_NUM_MIME_TYPES_ALLOWED;
Type++)
if (!strcmp (MIMEType,MIM_MIMETypesAllowed[Type]))
return true;
return false;
}

38
swad_file_MIME.h Normal file
View File

@ -0,0 +1,38 @@
// swad_file_MIME.h: allowed MIME types in files in file browsers
#ifndef _SWAD_MIM
#define _SWAD_MIM
/*
SWAD (Shared Workspace At a Distance in Spanish),
is a web platform developed at the University of Granada (Spain),
and used to support university teaching.
This file is part of SWAD core.
Copyright (C) 1999-2019 Antonio Cañas Vargas
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU Affero General Public License as
published by the Free Software Foundation, either version 3 of the
License, or (at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU Affero General Public License for more details.
You should have received a copy of the GNU Affero General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
/*****************************************************************************/
/********************************* Headers ***********************************/
/*****************************************************************************/
#include <stdbool.h> // For boolean type
/*****************************************************************************/
/***************************** Public prototypes *****************************/
/*****************************************************************************/
bool MIM_CheckIfMIMETypeIsAllowed (const char *MIMEType);
#endif

168
swad_file_extension.c Normal file
View File

@ -0,0 +1,168 @@
// swad_file_extension.c: file extensions allowed in file browsers
/*
SWAD (Shared Workspace At a Distance),
is a web platform developed at the University of Granada (Spain),
and used to support university teaching.
This file is part of SWAD core.
Copyright (C) 1999-2019 Antonio Cañas Vargas
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU Affero General Public License as
published by the Free Software Foundation, either version 3 of the
License, or (at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU Affero General Public License for more details.
You should have received a copy of the GNU Affero General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
/*****************************************************************************/
/********************************** Headers **********************************/
/*****************************************************************************/
#include "swad_file_extension.h"
#include "swad_string.h"
/*****************************************************************************/
/*************************** Internal constants ******************************/
/*****************************************************************************/
/* Extensions allowed for uploaded files */
const char *Ext_FileExtensionsAllowed[] =
{
"3gp" , // Video Android mobile
"7z" ,
"asm" ,
"avi" ,
"bas" ,
"bat" ,
"bbl" ,
"bib" ,
"bin" ,
"bmp" ,
"bz2" ,
"c" ,
"cc" ,
"cdr" ,
"cpp" ,
"css" ,
"csv" ,
"dmg" ,
"doc" ,
"docx" ,
"dotm" ,
"dwd" ,
"eps" ,
"fdf" ,
"flv" ,
"gdb" , // GNU Debugger Script
"ggb" ,
"ggt" ,
"gif" ,
"gz" ,
"h" ,
"hex" ,
"htm" ,
"html" ,
"img" ,
"java" ,
"jpg" ,
"jpeg" ,
"latex",
"m" ,
"mdb" ,
"mht" ,
"mhtml",
"mid" ,
"mov" ,
"mp3" ,
"mp4" ,
"mpeg" ,
"mpg" ,
"mpp" ,
"mus" ,
"nb" ,
"odb" ,
"odc" ,
"odf" ,
"odg" ,
"odi" ,
"odm" ,
"odp" ,
"ods" ,
"odt" ,
"otg" ,
"otp" ,
"ots" ,
"ott" ,
"pas" ,
"pl" ,
"pdf" ,
"png" ,
"pps" ,
"ppsx" ,
"ppt" ,
"pptx" ,
"ps" ,
"pss" ,
"qt" ,
"r" ,
"ram" ,
"rar" ,
"raw" ,
"rdata",
"rm" ,
"rp" , // Axure, http://www.axure.com/
"rtf" ,
"s" ,
"sav" , // SPSS Data File
"sbs" ,
"sf3" ,
"sgp" ,
"spp" ,
"spo" ,
"sps" ,
"swf" ,
"sws" ,
"tar" ,
"tex" ,
"tgz" ,
"tif" ,
"txt" ,
"voc" ,
"vp" , // Justinmind, http://www.justinmind.com/
"wav" ,
"wma" ,
"wmv" ,
"wxm" ,
"wxmx" ,
"xls" ,
"xlsx" ,
"zip" ,
};
const unsigned Ext_NUM_FILE_EXT_ALLOWED = sizeof (Ext_FileExtensionsAllowed) /
sizeof (Ext_FileExtensionsAllowed[0]);
/*****************************************************************************/
/******************* Check if file extension is allowed **********************/
/*****************************************************************************/
bool Ext_CheckIfFileExtensionIsAllowed (const char FilFolLnkName[NAME_MAX + 1])
{
unsigned Type;
for (Type = 0;
Type < Ext_NUM_FILE_EXT_ALLOWED;
Type++)
if (Str_FileIs (FilFolLnkName,
Ext_FileExtensionsAllowed[Type]))
return true;
return false;
}

39
swad_file_extension.h Normal file
View File

@ -0,0 +1,39 @@
// swad_file_extension.h: file extensions allowed in file browsers
#ifndef _SWAD_EXT
#define _SWAD_EXT
/*
SWAD (Shared Workspace At a Distance in Spanish),
is a web platform developed at the University of Granada (Spain),
and used to support university teaching.
This file is part of SWAD core.
Copyright (C) 1999-2019 Antonio Cañas Vargas
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU Affero General Public License as
published by the Free Software Foundation, either version 3 of the
License, or (at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU Affero General Public License for more details.
You should have received a copy of the GNU Affero General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
/*****************************************************************************/
/********************************* Headers ***********************************/
/*****************************************************************************/
#include <linux/limits.h> // For NAME_MAX
#include <stdbool.h> // For boolean type
/*****************************************************************************/
/***************************** Public prototypes *****************************/
/*****************************************************************************/
bool Ext_CheckIfFileExtensionIsAllowed (const char FilFolLnkName[NAME_MAX + 1]);
#endif