/ M122 Ad List Editable

Typ Datum Titel Kategorie Status
Biete 13.03.2018 Touren-Skischuhe Markplatz Auf Freigabe wartend
Suche 11.03.2018 Skitouren in Saas-Fee oder Grächten Bergpartner-in Auf Freigabe wartend
Biete 10.03.2018 Skistöcke Fundbüro Freigegeben

Touren-Skischuhe

Wollen Sie diesen Eintrag wirklich löschen? Diese Aktion kann nicht mehr rückgängig gemacht werden.

Skitouren in Saas-Fee oder Grächten

Wollen Sie diesen Eintrag wirklich löschen? Diese Aktion kann nicht mehr rückgängig gemacht werden.

Skistöcke

Wollen Sie diesen Eintrag wirklich löschen? Diese Aktion kann nicht mehr rückgängig gemacht werden.

Data

{
	"columnList": [
		{
			"label": "Typ"
		},
		{
			"label": "Datum"
		},
		{
			"label": "Titel"
		},
		{
			"label": "Kategorie"
		},
		{
			"label": "Status"
		},
		{
			"orderable": "false"
		},
		{
			"orderable": "false"
		}
	],
	"list": [
		{
			"id": "ad-1",
			"type": {
				"class": "offer",
				"label": "Biete"
			},
			"date": {
				"formatted": "13.03.2018",
				"timestamp": 1520899200000
			},
			"link": {
				"url": "/pages/ad_detail_logged_in/ad_detail_logged_in.html",
				"label": "Touren-Skischuhe"
			},
			"category": "Markplatz",
			"status": "Auf Freigabe wartend",
			"editLink": {
				"url": "/pages/ad_create/ad_create.html"
			},
			"deleteLink": {
				"url": "/pages/account/account.html?1"
			}
		},
		{
			"id": "ad-2",
			"type": {
				"class": "search",
				"label": "Suche"
			},
			"date": {
				"formatted": "11.03.2018",
				"timestamp": 1520726400000
			},
			"link": {
				"url": "/pages/ad_detail_logged_in/ad_detail_logged_in.html",
				"label": "Skitouren in Saas-Fee oder Grächten"
			},
			"category": "Bergpartner-in",
			"status": "Auf Freigabe wartend",
			"editLink": {
				"url": "/pages/ad_create/ad_create.html"
			},
			"deleteLink": {
				"url": "/pages/account/account.html?2"
			}
		},
		{
			"id": "ad-3",
			"type": {
				"class": "offer",
				"label": "Biete"
			},
			"date": {
				"formatted": "10.03.2018",
				"timestamp": 1520640000000
			},
			"link": {
				"url": "/pages/ad_detail_logged_in/ad_detail_logged_in.html",
				"label": "Skistöcke"
			},
			"category": "Fundbüro",
			"status": "Freigegeben",
			"editLink": {
				"url": "/pages/ad_create/ad_create.html"
			},
			"deleteLink": {
				"url": "/pages/account/account.html?3"
			}
		}
	],
	"deleteConfirmationCopy": "<p>Wollen Sie diesen Eintrag wirklich löschen? Diese Aktion kann nicht mehr rückgängig gemacht werden.</p>",
	"translations": {
		"edit": "Bearbeiten",
		"delete": "Löschen",
		"close": "Schliessen",
		"cancel": "Abbrechen"
	}
}

Template

<div class="m-ad-list m-ad-list-editable m-data-table"}>
	<div class="m-data-table__wrapper">
		<table>
			<thead>
			<tr>
				{{#each columnList as |column|}}
					<th{{#if column.orderable}} data-orderable="{{column.orderable}}"{{/if}}>{{{column.label}}}</th>
				{{/each}}
			</tr>
			</thead>
			<tbody>
			{{#each list}}
				<tr>
					<td>
						<span class="m-ad__badge m-ad__badge--{{type.class}} fs-copy-note">{{type.label}}</span>
					</td>
					<td>{{date.formatted}}</td>
					<td>
						<a class="m-ad-list__link c-button-text c-button-text--red" href="{{link.url}}"{{#if link.target}} target="{{link.target}}"{{/if}}>
							{{link.label}}
						</a>
					</td>
					<td>{{category}}</td>
					<td>{{status}}</td>
					<td>
						<a class="m-ad-list-editable__link c-button-text c-button-text--red" href="{{editLink.url}}" aria-label="{{../translations.edit}}">
							<svg class="m-ad-list-editable__icon svg" aria-hidden="true"><use xlink:href="{{@root.global.svgSprite}}#icon-pencil"></use></svg>
						</a>
					</td>
					<td>
						<button class="m-ad-list-editable__button c-button-text c-button-text--red" data-toggle="{{id}}" aria-label="{{../translations.delete}}">
							<svg class="m-ad-list-editable__icon svg" aria-hidden="true"><use xlink:href="{{@root.global.svgSprite}}#icon-trash-bin"></use></svg>
						</button>
					</td>
				</tr>
			{{/each}}
			</tbody>
		</table>
	</div>

	{{#each list}}
		{{> modules/m122_ad_list_editable/partials/_modal this translations=../translations body=../deleteConfirmationCopy}}
	{{/each}}

</div>

Template of modules/m122_ad_list_editable/partials/_modal

<div class="m-ad-list__modal c-modal" id="{{id}}" data-init="Modal">
	<header class="c-modal__header">
		<h2 class="c-modal__headline fs-h3">
			<svg class="m-ad-list-editable__icon svg" aria-hidden="true"><use xlink:href="{{@root.global.svgSprite}}#icon-trash-bin"></use></svg>
			{{link.label}}
		</h2>
		<button class="c-modal__close c-button-text" data-close>
			<svg class="c-modal__close-icon svg">
				<title>{{translations.close}}</title>
				<use xlink:href="{{@root.global.svgSprite}}#icon-x"></use>
			</svg>
		</button>
	</header>
	<div class="c-modal__body">
		{{{body}}}
	</div>
	<footer class="c-modal__footer">
		<a class="c-button" href="{{deleteLink.url}}">{{translations.delete}}</a>
		<button class="c-button c-button--secondary" data-close>{{translations.cancel}}</button>
	</footer>
</div>

Global Data

{
	"global": {
		"lang": "de",
		"locale": "de-CH",
		"svgSprite": "/assets/media/svg/svg-sprite.svg",
		"transparentPixel": "data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7",
		"season": "summer",
		"api": {
			"suisseAlpine": "https://dev.suissealpine.sac-cas.ch/api",
			"sacRouteDetail": "https://dev.web.sac-cas.ch/de/?type=1567765346410&tx_usersaccas2020_sac2020[routeId]=",
			"sacRoutePassTrough": "https://dev.web.sac-cas.ch/de/?type=1567765346411&tx_usersaccas2020_sac2020[routeId]=",
			"uploadProfileImage": "https://dev.web.sac-cas.ch/?eID=routing&route=usersaccassite/users/current/uploadProfileImage",
			"deleteProfileImage": "https://dev.web.sac-cas.ch/?eID=routing&route=usersaccassite/users/current/deleteProfileImage",
			"aimeosShop": "https://dev.web.sac-cas.ch/de/shop/shopapi/",
			"mailchimpForm": "https://sac-cas.us2.list-manage.com/subscribe/post?u=466a37a029f12e4df9e7a2a1f&id=ee3f0f3cf3",
			"collections": "https://collectionsdev.web.sac-cas.ch/api",
			"hrs": "https://www.alpsonline.org/hut-web-service?wsdl"
		},
		"baseAimeosUploadPath": "https://dev.web.sac-cas.ch/uploads/tx_aimeos/",
		"mapIframeUrl": "/modules/m030_map/media/map_iframe.html",
		"baseDestinationLinkUrl": "/pages/destination_summit/destination_summit.html?",
		"destinationLinkRouteAnchor": "route",
		"baseJourneyLinkUrl": "https://dev.web.sac-cas.ch/de/redirect/google-maps-routing/lv03/",
		"routeCollectionLinkUrl": "https://dev.web.sac-cas.ch/de/mein-sac/uebersicht/",
		"hrsLinkUrl": "https://www.alpsonline.org/reservation/wizard?header=yes&hut_id={{hutId}}&selectedDate={{date}}",
		"schweizMobilImportUrl": "https://map.schweizmobil.ch/?showDialog=importcoordinates&showLogin&coordinates={{coordinates}}",
		"geologyImageUrl": "https://www.sac-cas.ch/fileadmin/Huetten_und_Touren/Tourenportal/Gesteinszonenkarten/Hovercard/{{image}}.jpg",
		"features": {
			"archive": true
		},
		"translations": {
			"disciplines": {
				"mountain_hiking": "Berg- und Alpinwandern",
				"alpine_tour": "Hochtour",
				"climbing": "Klettern",
				"alpine_climbing": "Alpinklettern",
				"via_ferrata": "Klettersteig",
				"ski_tour": "Skitour",
				"snowshoe_tour": "Schneeschuhtour",
				"archive": "Routenarchiv"
			},
			"types": {
				"summit": "Gipfel",
				"hut": "Hütte",
				"traverse": "Übergang",
				"marking_point": "Markanter Punkt",
				"departure_arrival": "Ausgangp./Talort",
				"climbing_area": "Klettergebiet"
			},
			"markingPoints": {
				"lake": "See",
				"catering": "Einkehr",
				"waterfall": "Wasserfall",
				"cave": "Höhle",
				"bridge": "Brücke",
				"alp": "Alpe",
				"other": "Sehenswürdigkeit"
			},
			"difficulties": {
				"alpine_tour": {
					"L": "L",
					"WS": "WS",
					"ZS": "ZS",
					"S": "S",
					"SS": "SS",
					"AS": "AS"
				},
				"ski_tour": {
					"L": "L",
					"WS": "WS",
					"ZS": "ZS",
					"S": "S",
					"SS": "SS",
					"AS": "AS"
				}
			},
			"altitudeSuffix": "m ü.M.",
			"altitudeDifferenceUnit": "hm",
			"hoursUnit": "h",
			"difficulty": "Schwierigkeit",
			"ascent": "Aufstieg",
			"descent": "Abstieg",
			"route": "Route",
			"routes": "Routen",
			"segment": "Routenabschnitt",
			"segments": "Routenabschnitte",
			"approach": "Zustieg",
			"approaches": "Zustiege",
			"sector": "Sektor",
			"sectors": "Sektoren",
			"hut": "Hütte",
			"hutPrivate": "Hütte Privat",
			"hutFilter": "Hüttenfinder",
			"situationWarning": "Zustandswarnung",
			"protectionRule": "Schutzbestimmung",
			"archiveRoute": "Archivroute",
			"archiveRoutes": "Archivrouten",
			"map": {
				"map": "Karte",
				"legend": "Legende",
				"zoomIn": "Reinzoomen",
				"zoomOut": "Rauszoomen",
				"enterFullscreenMode": "Vollbildmodus starten",
				"leaveFullscreenMode": "Vollbildmodus verlassen",
				"searchLabel": "Region, Gipfel, Hütte, Talort, POI, …",
				"disciplineSettings": "Disziplinen Einstellungen",
				"layerSettings": "Ergänzende Kartenebenen",
				"geolocate": "Lokalisieren",
				"searchInView": "In diesem Gebiet suchen",
				"waypointDrawing": "Auf Karte zeichnen",
				"drawWaypoints": "Route zeichnen",
				"removeWaypoints": "Route löschen",
				"exportWaypoints": "GPX downloaden",
				"saveInSchweizMobil": "Speichern|SchweizMobil Plus",
				"moreInFullscreen": "Entdecke weitere Funktionen auf der Vollbildkarte:<br>- Zeichne deine eigenen Tracks",
				"baseLayers": {
					"pois": "Tourenziele, Hütten",
					"routes": "Routen"
				},
				"additionalLayers": {
					"summer": "Sommer",
					"winter": "Winter",
					"hikingTrails": "Wanderwege",
					"closedHikingTrails": "Gesperrte Wanderwege",
					"wildlifeReserves": "Wildschutzgebiete",
					"skiTours": "swisstopo Skitouren",
					"designatedWildlifeAreas": "Wildruhezonen",
					"publicTransportStops": "ÖV-Stationen",
					"slopesOver30": "Hangneigung ab 30°",
					"protectionRules": "Schutzbestimmungen",
					"situationWarnings": "Zustandswarnungen",
					"geology": "Gesteinszonenkarte",
					"alpGuardDogs": "Herdenschutzhunde",
					"armyShooting": "Schiessanzeigen",
					"snowCover": "Schneeabdeckung",
					"snowDepth": "Schneehöhe"
				},
				"layerOpacity": "Deckkraft aktiver Karten",
				"foregroundOpacity": "Deckkraft aktiver Disziplinen und Hütten",
				"backgroundOpacity": "Deckkraft inaktiver Disziplinen und Hütten",
				"reset": "Zurücksetzen"
			},
			"mapHoverCard": {
				"publicTransport": "Öffentlicher Verkehr",
				"parkingInformations": "Parkinformationen",
				"planJourneyPublicTransport": "Anreise",
				"searchPublicTransport": "Verbindung suchen (SBB)",
				"planJourneyCar": "Anreise Google Maps",
				"downloadWaypoint": "Wegpunkt downloaden",
				"routeLinkLabel": "Route ansehen",
				"wildlifeReserve": "Wildschutzgebiet",
				"wildlifeArea": "Wildruhezone",
				"closedHikingTrail": "Sperrung / Umleitung Wanderweg",
				"alpGuardDogs": "Alpweide geschützt durch Herdenschutzhunde",
				"armyShooting": "Schiessanzeige und Gefahrenstelle",
				"legalBasis": "Grundlage",
				"additionalInformation": "Zusatzinformationen",
				"showDetails": "Details anzeigen",
				"moreOnMapAdminCh": "Mehr Informationen auf map.admin.ch",
				"currentSnowDepth": "Aktuelle Schneehöhe"
			},
			"protectionArea": {
				"lastUpdated": "zuletzt aktualisiert am {{lastUpdate}}",
				"validity": "gültig von {{validFrom}} bis {{validUntil}}",
				"validityEstimated": "gültig von {{validFrom}} bis voraussichtlich {{validUntil}}",
				"validFrom": "gültig ab {{validFrom}}",
				"validUntil": "gültig bis {{validUntil}}",
				"validUntilEstimated": "gültig bis voraussichtlich {{validUntil}}",
				"generallyValid": "generell gültig"
			},
			"collections": {
				"addRouteToCollection": "Route merken",
				"selectCollection": "Merkliste auswählen",
				"selectRoute": "Welche Route(n) dieses Tourenziels möchtest du dir merken?",
				"selectRouteError": "Bitte wähle eine Route aus.",
				"addToCollection": "Merken",
				"cancel": "Abbrechen",
				"routeAddedToCollection": "Die ausgewählte Route(n) wurden zu deiner Merkliste hinzugefügt.",
				"createNew": "Neue Liste",
				"close": "Schliessen",
				"goToCollection": "Zur Merkliste",
				"alreadyCollectedIn": "Bereits gemerkt auf"
			}
		},
		"basePublicTransportLinkUrl": "https://www.sbb.ch/en/buying/pages/fahrplan/fahrplan.xhtml?language=en&nach=",
		"snowDepthInfoUrl": "https://www.sac-cas.ch",
		"snowCoverInfoUrl": "https://www.sac-cas.ch",
		"destinationFallbackImages": {
			"summit": {
				"srcset": {
					"sizeList": [
						[
							600
						],
						[
							1200
						],
						[
							2048
						]
					],
					"urlList": [
						"/modules/c015_teaser_destination/media/summit_600.jpg",
						"/modules/c015_teaser_destination/media/summit_1200.jpg",
						"/modules/c015_teaser_destination/media/summit_2048.jpg"
					]
				}
			},
			"hut": {
				"srcset": {
					"sizeList": [
						[
							600
						],
						[
							1200
						]
					],
					"urlList": [
						"/modules/c015_teaser_destination/media/hut_600.jpg",
						"/modules/c015_teaser_destination/media/hut_1200.jpg",
						"/modules/c015_teaser_destination/media/hut_2048.jpg"
					]
				}
			}
		},
		"map": {
			"news": [
				{
					"label": "Neu",
					"copy": "Jetzt auch <b>GPX downloaden</b>",
					"type": "waypointDrawing"
				},
				{
					"label": "Neu",
					"copy": "Jetzt Deckkraft für jede Ebene einstellbar",
					"type": "layerSettings"
				}
			],
			"metaLinkList": [
				{
					"url": "https://www.swisstopo.admin.ch/",
					"label": "© swisstopo (5701325910)"
				},
				{
					"url": "/pages/map_legend/map_legend.html",
					"label": "Hilfe & Legende"
				},
				{
					"url": "#",
					"label": "Haftungsausschluss"
				}
			]
		}
	}
}

Documentation

Description

Integration

Copy HTML.