| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230 | 
							- <template>
 
- 	<div class="app">
 
- 		<main-header></main-header>
 
- 		<div class="modal" :class="{ 'is-active': isRegisterActive }">
 
- 			<div class="modal-background"></div>
 
- 			<div class="modal-card">
 
- 				<header class="modal-card-head">
 
- 					<p class="modal-card-title">Register</p>
 
- 					<button class="delete" @click="toggleModal('register')"></button>
 
- 				</header>
 
- 				<section class="modal-card-body">
 
- 					<!-- validation to check if exists http://bulma.io/documentation/elements/form/ -->
 
- 					<label class="label">Email</label>
 
- 					<p class="control">
 
- 						<input class="input" type="text" placeholder="Email..." v-model="$parent.register.email">
 
- 					</p>
 
- 					<label class="label">Username</label>
 
- 					<p class="control">
 
- 						<input class="input" type="text" placeholder="Username..." v-model="$parent.register.username">
 
- 					</p>
 
- 					<label class="label">Password</label>
 
- 					<p class="control">
 
- 						<input class="input" type="password" placeholder="Password..." v-model="$parent.register.password">
 
- 					</p>
 
- 					<div class="g-recaptcha" data-sitekey="6Lfa-wYUAAAAANY6iVvWNEXohC38l1cZqHRole9T"></div>
 
- 				</section>
 
- 				<footer class="modal-card-foot">
 
- 					<a class="button is-primary" @click="submitModal('register')">Submit</a>
 
- 				</footer>
 
- 			</div>
 
- 		</div>
 
- 		<div class="modal" :class="{ 'is-active': isLoginActive }">
 
- 			<div class="modal-background"></div>
 
- 			<div class="modal-card">
 
- 				<header class="modal-card-head">
 
- 					<p class="modal-card-title">Login</p>
 
- 					<button class="delete" @click="toggleModal('login')"></button>
 
- 				</header>
 
- 				<section class="modal-card-body">
 
- 					<!-- validation to check if exists http://bulma.io/documentation/elements/form/ -->
 
- 					<label class="label">Email</label>
 
- 					<p class="control">
 
- 						<input class="input" type="text" placeholder="Email..." v-model="$parent.login.email">
 
- 					</p>
 
- 					<label class="label">Password</label>
 
- 					<p class="control">
 
- 						<input class="input" type="password" placeholder="Password..." v-model="$parent.login.password">
 
- 					</p>
 
- 				</section>
 
- 				<footer class="modal-card-foot">
 
- 					<a class="button is-primary" @click="submitModal('login')">Submit</a>
 
- 				</footer>
 
- 			</div>
 
- 		</div>
 
- 		<div class="group">
 
- 			<!--<div class="group-title">{{group.name}}</div>-->
 
- 			<div class="group-stations">
 
- 				<div class="stations-station" v-for="station in $parent.stations" v-link="{ path: '/station/' + station.id }" @click="this.$dispatch('joinStation', station.id)">
 
- 					<img class="station-image" :src="station.playlist[station.currentSongIndex].thumbnail" />
 
- 					<div class="station-info">
 
- 						<div class="station-grid-left">
 
- 							<h3>{{ station.displayName }}</h3>
 
- 							<p>{{ station.description }}</p>
 
- 						</div>
 
- 						<div class="station-grid-right">
 
- 							<div>{{ station.users }}  <i class="fa fa-user" aria-hidden="true"></i></div>
 
- 						</div>
 
- 					</div>
 
- 				</div>
 
- 			</div>
 
- 		</div>
 
- 		<main-footer></main-footer>
 
- 	</div>
 
- </template>
 
- <script>
 
- 	import MainHeader from '../MainHeader.vue'
 
- 	import MainFooter from '../MainFooter.vue'
 
- 	export default {
 
- 		data() {
 
- 			return {
 
- 				isRegisterActive: false,
 
- 				isLoginActive: false
 
- 			}
 
- 		},
 
- 		methods: {
 
- 			toggleModal: function(type) {
 
- 				switch(type) {
 
- 					case 'register':
 
- 						this.isRegisterActive = !this.isRegisterActive;
 
- 						break;
 
- 					case 'login':
 
- 						this.isLoginActive = !this.isLoginActive;
 
- 						break;
 
- 				}
 
- 			},
 
- 			submitModal: function(type) {
 
- 				switch(type) {
 
- 					case 'register':
 
- 						this.$dispatch('register');
 
- 						this.toggleModal('register');
 
- 						break;
 
- 					case 'login':
 
- 						this.$dispatch('login');
 
- 						this.toggleModal('login');
 
- 						break;
 
- 				}
 
- 			}
 
- 		},
 
- 		components: { MainHeader, MainFooter }
 
- 	}
 
- </script>
 
- <style lang="scss">
 
- 	@import 'theme.scss';
 
- 	* { box-sizing: border-box; font-family: Roboto, sans-serif; }
 
- 	html {
 
- 		width: 100%;
 
- 		height: 100%;
 
- 		color: rgba(0, 0, 0, 0.87);
 
- 		body {
 
- 			width: 100%;
 
- 			height: 100%;
 
- 			margin: 0;
 
- 			padding: 0;
 
- 		}
 
- 	}
 
- 	@media only screen and (min-width: 1200px) {
 
- 		html {
 
- 			font-size: 15px;
 
- 		}
 
- 	}
 
- 	@media only screen and (min-width: 992px) {
 
- 		html {
 
- 			font-size: 14.5px;
 
- 		}
 
- 	}
 
- 	@media only screen and (min-width: 0) {
 
- 		html {
 
- 			font-size: 14px;
 
- 		}
 
- 	}
 
- 	.label {
 
- 		display: flex;
 
- 	}
 
- 	.g-recaptcha {
 
- 		display: flex;
 
- 		justify-content: center;
 
- 		margin-top: 20px;
 
- 	}
 
- 	.group {
 
- 		width: 100%;
 
- 		height: 448px;
 
- 		margin: 64px 0 0 0;
 
- 		.group-title {
 
- 			float: left;
 
- 			clear: none;
 
- 			width: 100%;
 
- 			height: 64px;
 
- 			line-height: 48px;
 
- 			text-align: center;
 
- 			font-size: 48px;
 
- 		}
 
- 		.group-stations {
 
- 			white-space: nowrap;
 
- 			text-align: center;
 
- 			overflow: hidden;
 
- 			float: left;
 
- 			clear: none;
 
- 			width: 100%;
 
- 			height: 400px;
 
- 			.stations-station {
 
- 				position: relative;
 
- 				top: 16px;
 
- 				display: inline-block;
 
- 				clear: none;
 
- 				width: 256px;
 
- 				height: 370px;
 
- 				margin: 0 16px 0 16px;
 
- 				box-shadow: 0 1px 6px 2px rgba(0, 0, 0, 0.25);
 
- 				cursor: pointer;
 
- 				.station-info {
 
- 					display: flex;
 
- 					flex-direction: row;
 
- 					align-items: center;
 
- 				}
 
- 				.station-image {
 
- 					width: 100%;
 
- 					height: 256px;
 
- 				}
 
- 				.station-grid-left {
 
- 					display: flex;
 
- 					flex-direction: column;
 
- 					width: 75%;
 
- 					text-align: left;
 
- 					padding-left: 10px;
 
- 					h3, p {
 
- 						margin: 0;
 
- 						white-space: normal;
 
- 						padding-top: 10px;
 
- 					}
 
- 				}
 
- 				.station-grid-right {
 
- 					display: flex;
 
- 					flex-direction: column;
 
- 					width: 25%;
 
- 				}
 
- 			}
 
- 		}
 
- 	}
 
- </style>
 
 
  |