Text Info desing

This commit is contained in:
Siroco 2018-12-17 17:26:15 +01:00
parent 8bed8e419a
commit 0d50695302
9 changed files with 154 additions and 98 deletions

View File

@ -3,6 +3,6 @@
map-box {margin:0;}
div.title {font-size:1em;text-align:left;padding:10px;position:absolute;bottom:0;left:0;width:30vw;background-color:rgba(0,0,0,0);color:#fff;}
div.title h1 {font-family:"Open Sans";font-size:4em;}
div.title h1 span {background:#d52b1e;padding:5px;}
div.title h1 span {background:#d52b1e;padding:0 10px;}
div.title h2 span {background:#fff;padding:2px;color:#000;}
div.title p span {line-height:1.4;background:#021011;}

View File

@ -23,6 +23,7 @@ export class AppComponent {
this.wordpressService.getPage(slug)
.subscribe(data=> {
this.pages = data;
console.log(data)
})
})
}

View File

@ -72,7 +72,6 @@ export class MapBoxComponent implements OnInit {
this.hoveredStateId = e.features[0].id;
this.map.setFeatureState({source: 'ticino', id: this.hoveredStateId}, { hover: true});
console.log(this.hoveredStateId);
}
})
@ -90,7 +89,6 @@ export class MapBoxComponent implements OnInit {
this.wordpressService.getMarker(slug)
.subscribe(data => {
data.map(page => {
console.log(page)
this.mService.addMessage(page);
})
})
@ -112,18 +110,28 @@ export class MapBoxComponent implements OnInit {
type: "symbol",
source: "ticino",
layout: {
// 'icon-size': 1,
// 'icon-image': "sound-marker",
// 'icon-allow-overlap': true,
'icon-size': 1,
'icon-image': "sound-marker",
'icon-allow-overlap': true,
"text-field": "{title}",
'text-allow-overlap': true,
'text-size':18,
'text-offset':[0,0],
'text-offset':[0,-1.5],
'text-transform':'lowercase',
},
paint: {
// 'text-halo-color':"#d52b1e",
'text-halo-width':20,
// 'text-halo-width':20,
'text-halo-width': ["case",
["boolean", ["feature-state", "hover"], false],
20,
0
],
'text-opacity': ["case",
["boolean", ["feature-state", "hover"], false],
1,
0
],
'text-color':"#fff",
'text-halo-color':["case",
["boolean", ["feature-state", "hover"], false],
@ -157,7 +165,7 @@ export class MapBoxComponent implements OnInit {
);
this.featurecollection = fc;
this.source.setData(fc)
console.log(this.source)
console.log(fc);
});
}

View File

@ -19,5 +19,6 @@ export class PageItem {
},
public pdf?:any,
public georeference?:number[],
public author? : string,
) {}
}

View File

@ -1,10 +0,0 @@
div.modal {display:block;position:absolute;top:0;left:0;width:100vw;height:100vh;width:100%;height:100%; background-color:rgba(255,255,255,0.8);overflow-y:scroll;}
div.content { background:#fff;border:1px solid #eee;padding:10px;border-radius:1px; position:relative; width:80vw;min-height:50vh;margin:auto;margin-top:10vh;margin-bottom:10vh;}
div.content div.tags-container,
div.content div.categories-container,
div.content div.content-container {width:100%;clear:both;position:relative;padding:10px 0px;}
div.content ul {list-style:none;width:100%;clear:both;}
div.content ul.categories li,
div.content ul.tags li {float:left;padding:5px;margin:2px;background-color:#d52b1e;color:#fff;}
div.content div.audio-box audio {margin-top:10px;margin-bottom:10px;}
div.close-button {position:absolute;right:0;top:0;z-index:100;padding:10px;}

View File

@ -1,27 +1,43 @@
<div *ngIf="mService.message.length>0" class="modal">
<div class="content" *ngFor="let page of mService.message">
<div class="close-button" (click)="mService.clean()">[X]</div>
<h1 [innerHTML]="page.title.rendered"></h1>
<p>{{ page.date | date }}</p>
<div class="categories-container" *ngIf="page._embedded && page._embedded['wp:term']">
<strong i18n>Categories</strong>
<ul class="categories"><li *ngFor="let cat of page._embedded['wp:term'][0]">{{cat.name}}</li></ul>
<div class="content" *ngFor="let page of mService.message" style="">
<div class="close-button" (click)="mService.clean()">
<svg _ngcontent-c3="" height="16" viewBox="0 0 16 16" width="16">
<g _ngcontent-c3="" class="nc-icon-wrapper" fill="#202945">
<line _ngcontent-c3="" data-cap="butt" fill="none" stroke="#202945" stroke-linecap="round" stroke-linejoin="round" stroke-miterlimit="10" x1="13.5" x2="2.5" y1="2.5" y2="13.5"></line>
<line _ngcontent-c3="" data-cap="butt" fill="none" stroke="#202945" stroke-linecap="round" stroke-linejoin="round" stroke-miterlimit="10" x1="2.5" x2="13.5" y1="2.5" y2="13.5"></line>
</g>
</svg>
</div>
<div class="tags-container" *ngIf="page._embedded && page._embedded['wp:term']">
<strong i18n>Tags</strong>
<ul class="tags"><li *ngFor="let cat of page._embedded['wp:term'][1]">{{cat.name}}</li></ul>
<div class="col-left-70 content-col">
<h1><span [innerHTML]="page.title.rendered"></span></h1>
<div class="content-container" [innerHTML]="page.content.rendered"></div>
</div>
<div class="content-container" [innerHTML]="page.content.rendered"></div>
<div *ngFor="let m of page.media" class="audio-box">
<audio style="width:100%;" [src]="m.url" controls autoplay></audio>
<strong>Metadata <span (click)="showMetadata=!showMetadata">[+]</span></strong>
<ul *ngIf="showMetadata && m">
<li>Title: {{m.title}}</li>
<li>Author: {{m.meta.artist}}</li>
<li>Album: {{m.meta.album}}</li>
<li>Bitrate: {{m.meta.bitrate}}</li>
<li>Original filename: {{m.filename}}</li>
</ul>
<div class="col-right-30 content-col">
<div class="date-container">
<strong>Date:</strong> <p>{{ page.date | date }}</p>
</div>
<div *ngIf="page.author" class="author-container">
<strong>Author:</strong> <p [innerHTML]="page.author"></p>
</div>
<div class="categories-container" *ngIf="page._embedded && page._embedded['wp:term']">
<strong i18n>Categories</strong>
<ul class="categories"><li *ngFor="let cat of page._embedded['wp:term'][0]">{{cat.name}}</li></ul>
</div>
<div class="tags-container" *ngIf="page._embedded && page._embedded['wp:term']">
<strong i18n>Tags</strong>
<ul class="tags"><li *ngFor="let cat of page._embedded['wp:term'][1]">{{cat.name}}</li></ul>
</div>
<div *ngFor="let m of page.media" class="audio-box">
<audio style="width:100%;" [src]="m.url" controls autoplay></audio>
<div class="content-metadata" (click)="showMetadata=!showMetadata" style="cursor:pointer;"><strong>Metadata <span *ngIf="!showMetadata || showMetadata==false">&darr;</span><span *ngIf="showMetadata==true">&uarr;</span></strong></div>
<ul *ngIf="showMetadata && m">
<li>Title: {{m.title}}</li>
<li>Author: {{m.meta.artist}}</li>
<li>Album: {{m.meta.album}}</li>
<li>Bitrate: {{m.meta.bitrate}}</li>
<li>Original filename: {{m.filename}}</li>
</ul>
</div>
</div>
</div>
</div>

View File

@ -12,15 +12,25 @@
version="1.1"
x="0px"
y="0px"
viewBox="0 0 50 68.17596"
viewBox="0 0 37.795277 37.795278"
enable-background="new 0 0 1000 1000"
xml:space="preserve"
id="svg5045"
sodipodi:docname="sound-marker.svg"
inkscape:version="0.92.1 r15371"
width="50"
height="68.175957"><defs
id="defs5049" /><sodipodi:namedview
width="10mm"
height="10mm"><defs
id="defs5049"><filter
inkscape:collect="always"
style="color-interpolation-filters:sRGB"
id="filter5205"
x="-0.1012499"
width="1.2024997"
y="-0.083252527"
height="1.1665051"><feGaussianBlur
inkscape:collect="always"
stdDeviation="2.2816768"
id="feGaussianBlur5207" /></filter></defs><sodipodi:namedview
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1"
@ -33,9 +43,9 @@
inkscape:window-height="734"
id="namedview5047"
showgrid="false"
inkscape:zoom="15.166281"
inkscape:cx="5.464593"
inkscape:cy="16.294522"
inkscape:zoom="7.5685191"
inkscape:cx="15.235772"
inkscape:cy="17.389873"
inkscape:window-x="0"
inkscape:window-y="18"
inkscape:window-maximized="1"
@ -43,56 +53,59 @@
fit-margin-top="0"
fit-margin-left="0"
fit-margin-right="0"
fit-margin-bottom="0" /><metadata
fit-margin-bottom="0"
units="mm" /><metadata
id="metadata5023"> Svg Vector Icons : http://www.onlinewebfonts.com/icon <rdf:RDF><cc:Work
rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" /><dc:title></dc:title></cc:Work></rdf:RDF></metadata><g
id="g5294"
transform="matrix(2.4512531,0,0,2.4512531,-23.37369,-13.465334)"><path
inkscape:connector-curvature="0"
id="g5299"
transform="translate(0,-2)"><g
style="fill:#b3b3b3;filter:url(#filter5205)"
id="g4571"
transform="matrix(0.45172907,-0.01429504,0.05743541,0.11243039,5.6582825,29.575389)"><path
id="path4549"
d="m 25,0.71289062 c -54.622627,0 0,66.34179738 0,66.34179738 0,0 54.622625,-66.34179738 0,-66.34179738 z M 25,7.0449219 A 16.567791,16.567791 0 0 1 41.568359,23.611328 16.567791,16.567791 0 0 1 25,40.179688 16.567791,16.567791 0 0 1 8.4316406,23.611328 16.567791,16.567791 0 0 1 25,7.0449219 Z"
style="fill:#b3b3b3;fill-opacity:1;stroke:#000000;stroke-width:1.42647755;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.14009663"
inkscape:connector-curvature="0" /><g
style="fill:#b3b3b3;stroke:none;stroke-width:19.89921188;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.58454111"
transform="matrix(0.03566902,0,0,0.03566902,7.1653112,5.8664798)"
id="g4569"><g
style="fill:#b3b3b3;stroke:none;stroke-width:198.99212646;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.58454111"
id="g4567"
transform="matrix(0.1,0,0,-0.1,0,511)"><path
style="fill:#b3b3b3;stroke:none;stroke-width:198.99212646;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.58454111"
inkscape:connector-curvature="0"
id="path4551"
d="m 6633.3,110 v -4900 h 331.8 331.8 V 110 5010 h -331.8 -331.8 z" /><path
style="fill:#b3b3b3;stroke:none;stroke-width:198.99212646;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.58454111"
inkscape:connector-curvature="0"
id="path4553"
d="m 5331.8,110 v -3930.2 h 319 319 V 110 4040.2 h -319 -319 z" /><path
style="fill:#b3b3b3;stroke:none;stroke-width:198.99212646;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.58454111"
inkscape:connector-curvature="0"
id="path4555"
d="m 2703.1,110 v -2934.9 h 331.8 331.8 V 110 3044.9 h -331.8 -331.8 z" /><path
style="fill:#b3b3b3;stroke:none;stroke-width:198.99212646;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.58454111"
inkscape:connector-curvature="0"
id="path4557"
d="m 7934.9,110 v -2603.1 h 331.8 331.8 V 110 2713.1 h -331.8 -331.8 z" /><path
style="fill:#b3b3b3;stroke:none;stroke-width:198.99212646;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.58454111"
inkscape:connector-curvature="0"
id="path4559"
d="m 1401.6,110 v -2299.4 l 326.7,7.6 324.1,7.7 V 110 2394.1 l -324.1,7.7 -326.7,7.7 z" /><path
style="fill:#b3b3b3;stroke:none;stroke-width:198.99212646;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.58454111"
inkscape:connector-curvature="0"
id="path4561"
d="m 4030.2,110 v -1965.1 h 319 319 V 110 2075.1 h -319 -319 z" /><path
style="fill:#b3b3b3;stroke:none;stroke-width:198.99212646;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.58454111"
inkscape:connector-curvature="0"
id="path4563"
d="m 9241.6,117.7 7.7,-1960 326.7,-7.7 324.1,-7.6 V 110 2075.1 h -331.8 -331.8 z" /><path
style="fill:#b3b3b3;stroke:none;stroke-width:198.99212646;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.58454111"
inkscape:connector-curvature="0"
id="path4565"
d="M 100,110 V -1191.6 H 431.8 763.6 V 110 1411.6 H 431.8 100 Z" /></g></g></g><path
id="path5053"
d="m 19.73427,32.848178 c 0,0 22.283552,-27.0639638 0,-27.0639638 -22.2835522,0 0,27.0639638 0,27.0639638 z"
style="fill:#a5c9df;fill-opacity:1;stroke:#000000;stroke-width:0.58193809;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.14009663" /><circle
r="6.7589064"
cy="15.125909"
cx="19.73427"
id="path5087"
style="opacity:1;fill:#5197c1;fill-opacity:1;stroke:#e9e9e9;stroke-width:0.3819415;stroke-linecap:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:0.58454111" /><g
style="fill:#ffffff;stroke:none;stroke-width:19.89921188;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.58454111"
transform="matrix(0.01455134,0,0,0.01455134,12.458527,7.2853582)"
id="g5043"><g
style="fill:#ffffff;stroke:none;stroke-width:198.99212646;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.58454111"
id="g5041"
transform="matrix(0.1,0,0,-0.1,0,511)"><path
style="fill:#ffffff;stroke:none;stroke-width:198.99212646;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.58454111"
inkscape:connector-curvature="0"
id="path5025"
d="m 6633.3,110 v -4900 h 331.8 331.8 V 110 5010 h -331.8 -331.8 z" /><path
style="fill:#ffffff;stroke:none;stroke-width:198.99212646;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.58454111"
inkscape:connector-curvature="0"
id="path5027"
d="m 5331.8,110 v -3930.2 h 319 319 V 110 4040.2 h -319 -319 z" /><path
style="fill:#ffffff;stroke:none;stroke-width:198.99212646;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.58454111"
inkscape:connector-curvature="0"
id="path5029"
d="m 2703.1,110 v -2934.9 h 331.8 331.8 V 110 3044.9 h -331.8 -331.8 z" /><path
style="fill:#ffffff;stroke:none;stroke-width:198.99212646;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.58454111"
inkscape:connector-curvature="0"
id="path5031"
d="m 7934.9,110 v -2603.1 h 331.8 331.8 V 110 2713.1 h -331.8 -331.8 z" /><path
style="fill:#ffffff;stroke:none;stroke-width:198.99212646;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.58454111"
inkscape:connector-curvature="0"
id="path5033"
d="m 1401.6,110 v -2299.4 l 326.7,7.6 324.1,7.7 V 110 2394.1 l -324.1,7.7 -326.7,7.7 z" /><path
style="fill:#ffffff;stroke:none;stroke-width:198.99212646;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.58454111"
inkscape:connector-curvature="0"
id="path5035"
d="m 4030.2,110 v -1965.1 h 319 319 V 110 2075.1 h -319 -319 z" /><path
style="fill:#ffffff;stroke:none;stroke-width:198.99212646;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.58454111"
inkscape:connector-curvature="0"
id="path5037"
d="m 9241.6,117.7 7.7,-1960 326.7,-7.7 324.1,-7.6 V 110 2075.1 h -331.8 -331.8 z" /><path
style="fill:#ffffff;stroke:none;stroke-width:198.99212646;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.58454111"
inkscape:connector-curvature="0"
id="path5039"
d="M 100,110 V -1191.6 H 431.8 763.6 V 110 1411.6 H 431.8 100 Z" /></g></g></g></svg>
d="m 17.803388,3.8510121 c -27.0931969,3.4447841 4.183855,32.9059859 4.183855,32.9059859 0,0 22.90934,-36.35076996 -4.183855,-32.9059859 z m 0.39933,3.1407308 A 8.2838955,8.2838955 0 0 1 27.4655,14.163908 8.2838955,8.2838955 0 0 1 20.292367,23.426814 8.2838955,8.2838955 0 0 1 11.029462,16.25368 8.2838955,8.2838955 0 0 1 18.202718,6.9917429 Z"
style="fill:#d52b1e;fill-opacity:1;stroke:#000000;stroke-width:0.71323878;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.14009663"
inkscape:connector-curvature="0" /></g></svg>

Before

Width:  |  Height:  |  Size: 5.2 KiB

After

Width:  |  Height:  |  Size: 6.3 KiB

View File

@ -2,7 +2,7 @@
<html lang="en">
<head>
<meta charset="utf-8">
<title>ChiassoSoundmap</title>
<title>Ticino Soundmap</title>
<base href="/">
<meta name="viewport" content="width=device-width, initial-scale=1">
@ -11,5 +11,8 @@
</head>
<body>
<app-root></app-root>
<noscript>
[Ticino Soundmap] You need javascript
</noscript>
</body>
</html>

View File

@ -1,2 +1,26 @@
/* You can add global styles to this file, and also import other style files */
body {padding:0;font-size:12pt;overflow:hidden;}
@import url('https://fonts.googleapis.com/css?family=Oswald|Raleway');
body {padding:0;font-size:12pt;overflow:hidden;font-family:'Raleway',sans-serif;}
h1,h2,h3,h4,h5,h6 {font-family:'Oswald';}
div.modal {display:block;position:absolute;top:0;left:0;width:100vw;height:100vh;width:100%;height:100%; background-color:rgba(255,255,255,0.8);overflow-y:scroll;}
div.content { position:relative;display:block;height:100%;overflow:auto;font-size:1em;background:#fff;border:1px solid #eee;padding:30px;border-radius:1px; position:relative; width:80vw;min-height:50vh;margin:auto;margin-top:10vh;margin-bottom:10vh;}
div.col-left-70 {position:relative;float:right;width:66%;padding-left:1%;padding-right:1%;}
div.col-right-30 {border-right:1px solid #ccc;position:relative;float:right;width:28%;padding-left:1%;padding-right:1%;}
div.content h1 span {background-color:#d52b1e;color:#fff;font-size:3em;padding:0 20px;}
div.content h1,h2,h3,h4,h5 {font-size:1em;color:#d52b1e;}
div.content div.content-col > * {margin:0 20px;height:100%;display:block;}
div.content div.col-right-30 > * {margin-bottom:20px;}
div.content div.tags-container,
div.content div.categories-container,
div.content div.content-container {width:100%;clear:both;position:relative;padding:10px 0px;}
div.content div.content-container h2 {font-size:1em;color:#d52b1e;margin-left:5px;}
div.content-container img {max-width:100%;}
div.content-container p code {background:#efefef;padding:1px;}
div.content-container figcaption {background-color:#efefef;padding:10px;font-size:0.8em;}
div.content ul {list-style:none;max-width:100%;clear:both;padding:0;height:100%;}
div.content ul.categories li,
div.content ul.tags li {float:left;padding:5px;margin:2px;background-color:#d52b1e;color:#fff;}
div.content div.audio-box audio {margin-top:10px;margin-bottom:10px;}
div.close-button {cursor:pointer;position:absolute;right:0;top:0;z-index:100;padding:10px;}
div close-button:hover {background:#eee;}