<template>
	<div class="columns is-mobile">
		<div class="column is-8-desktop is-offset-2-desktop is-12-mobile">
			<table class="table is-striped">
				<thead>
					<tr>
						<td>ID</td>
						<td>Display Name</td>
						<td>Description</td>
						<td>Playlist</td>
						<td>Options</td>
					</tr>
				</thead>
				<tbody>
					<tr v-for="(index, station) in stations" track-by="$index">
						<td>
							<p class="control">
								<input class="input" type="text" :value="station.id" v-model="station.id">
							</p>
						</td>
						<td>
							<p class="control">
								<input class="input" type="text" :value="station.displayName" v-model="station.displayName">
							</p>
						</td>
						<td>
							<p class="control">
								<input class="input" type="text" :value="station.description" v-model="station.description">
							</p>
						</td>
						<td>
							<div class="control">
								<input v-for="song in station.playlist" track-by="$index" class="input" type="text" :value="song.id" v-model="song.id">
							</p>
						</td>
						<td>
							<a class="button is-danger" @click="stations.splice(index, 1)">Remove</a>
						</td>
					</tr>
				</tbody>
			</table>
			<a class="button is-success" @click="update()">Save Changes</a>
		</div>
	</div>
	<div class="columns is-mobile">
		<div class="column is-8-desktop is-offset-2-desktop is-12-mobile">
			<div class="card is-fullwidth">
				<header class="card-header">
					<p class="card-header-title">Create official station</p>
				</header>
				<div class="card-content">
					<div class="content">
						<label class="label">Name</label>
						<div class="control is-horizontal">
							<div class="control is-grouped">
								<p class="control is-expanded">
									<input class="input" type="text" placeholder="Locale name" v-model="newStation.name">
								</p>
								<p class="control is-expanded">
									<input class="input" type="text" placeholder="Display name" v-model="newStation.displayName">
								</p>
							</div>
						</div>
						<label class="label">Description</label>
						<p class="control is-expanded">
							<input class="input" type="text" placeholder="Short description" v-model="newStation.description">
						</p>
						<label class="label">Genres</label>
						<p class="control has-addons">
							<input class="input" type="text" placeholder="Genre" v-model="newStationGenre">
							<a class="button is-info">Add genre</a>
						</p>
						<span class="tag is-info">Bar<button class="delete is-info"></button></span>
						<span class="tag is-info">Bar<button class="delete is-info"></button></span>
						<span class="tag is-info">Bar<button class="delete is-info"></button></span>
					</div>
				</div>
				<footer class="card-footer">
					<a class="card-footer-item" @click="createStation()">Create</a>
				</footer>
			</div>
		</div>
	</div>
</template>

<script>
	export default {
		data() {
			return {
				stations: [],
				newStation: {}
			}
		},
		methods: {
			// saveQueueSongChanges: function() {
			// 	let local = this;
			// 	let songId = local.reviewSongId;
			// 	let songObject = {};
			// 	songObject._id = $("#reviewId").val();
			// 	songObject.title = $("#reviewTitle").val();
			// 	songObject.artists = $("#reviewArtists").val();
			// 	songObject.genres = $("#reviewGenres").val();
			// 	songObject.duration = $("#reviewDuration").val();
			// 	songObject.skipDuration = $("#reviewSkipDuration").val();
			// 	songObject.image = $("#reviewImage").val();
			// 	if (typeof songObject.artists === "string") {
			// 		songObject.artists = songObject.artists.split(", ");
			// 	}
			// 	if (typeof songObject.genres === "string") {
			// 		songObject.genres = songObject.genres.split(", ");
			// 	}
			// 	local.socket.emit("/songs/queue/updateSong/:id", songId, songObject, function(data) {
			// 		console.log(data);
			// 	});
			// },
			createStation: function() {
				let _this = this;
				let { newStation: { name, displayName, description } } = this;
				let data = { name, displayName, description, genres: ['edm'] };
				_this.socket.emit('stations.create', data, result => {
					console.log(result);
				});
			}
		},
		ready: function() {
			let socket = this.socket = this.$parent.$parent.socket;
			socket.emit("stations.index", (data) => {
				console.log(data);
				this.stations = data;
			});
			console.log('ready');
		}
	}
</script>

<style lang="scss" scoped>
	.is-success {
		width: 100%;
	}
</style>