// JavaScript Document jQuery(document).ready(function($) { $(window).load(function(){ var slide_id, slide_state, slide_state_new; var list_elem = $( 'ul#room_list' ); // On page load, overlay will have the "clickable" class. When clicked, advance to State 2 $( '.clickable' ).on( 'click', function () { if( $(this).hasClass( 'clickable' ) ) { slide_id = $(this).data('slide-id'); list_elem.find( 'li#room-'+slide_id+' .slide-control-prev' ).fadeIn(); list_elem.find( 'li#room-'+slide_id+' .rf_dots' ).fadeIn(); $(this).removeClass( 'clickable' ); advance_slide( slide_id, 2 ); } }); // If 'room details' link is clicked, advance to State 2 $( '.room-details' ).on( 'click', function (e) { e.preventDefault(); slide_id = $(this).data('slide-id'); if( list_elem.find( 'li#room-'+slide_id+' .slide-control-prev' ).css( 'display' ) == 'none' ) { list_elem.find( 'li#room-'+slide_id+' .slide-control-prev' ).fadeIn(); list_elem.find( 'li#room-'+slide_id+' .rf_dots' ).fadeIn(); } list_elem.find( 'li#room-'+slide_id+' .slide-overlay' ).removeClass( 'clickable' ); advance_slide( slide_id, 2 ); }); // If control button is clicked, calculate next state and advance slide $( '.slide-control' ).on( 'click', function (e) { e.preventDefault(); slide_id = $(this).data( 'slide-id' ); if( list_elem.find( 'li#room-'+slide_id+' .slide-control-prev' ).css( 'display' ) == 'none' ) { list_elem.find( 'li#room-'+slide_id+' .slide-control-prev' ).fadeIn(); list_elem.find( 'li#room-'+slide_id+' .rf_dots' ).fadeIn(); } list_elem.find( 'li#room-'+slide_id+' .slide-overlay' ).removeClass( 'clickable' ); slide_state = list_elem.find( 'li#room-'+slide_id ).data( 'state' ); if( $(this).hasClass( 'slide-control-next' ) ) { slide_state_new = parseFloat( slide_state ) + 1; if( slide_state_new > 3 ) { slide_state_new = 1; } } else { slide_state_new = parseFloat( slide_state ) - 1; if( slide_state_new < 1 ) { slide_state_new = 3; } } advance_slide( slide_id, slide_state_new ); }); // If control dot (beneath silder area) is clicked $( '.dot' ).on( 'click', function (e) { e.preventDefault(); if( !$(this).hasClass( 'current' ) ) { slide_id = $(this).data( 'slide-id' ); slide_state_new = $(this).data( 'state' ); list_elem.find( 'li#room-'+slide_id+' .dot' ).removeClass( 'current' ); $(this).addClass( 'current' ); advance_slide( slide_id, slide_state_new ); } }); // Toggle slide on mobile version $( '.mobile-toggle-room' ).on( 'click', function (e) { e.preventDefault(); slide_id = $(this).data( 'slide-id' ); if( $(this).hasClass( 'open' ) ) { list_elem.find( 'li#room-'+slide_id+' .slide' ).slideUp( 'slow' ); $(this).removeClass( 'open' ); } else { list_elem.find( 'li#room-'+slide_id+' .slide' ).slideDown( 'slow' ); $(this).addClass( 'open' ); } }); // Advance the room slider by one (in either direction) ------------------------------------------------------- function advance_slide( room_id, next_pos ) { var current_slide = $( '#room-'+room_id ); current_slide.find( '.dot' ).removeClass( 'current' ); if( next_pos == 2 ) { current_slide.data( 'state', '2' ); current_slide.find( '.slide-content' ).fadeIn( 'slow' ); current_slide.find( '.slide-overlay' ).fadeOut( 'slow' ); current_slide.find( '.rf_featuredImage' ).fadeIn( 'slow' ); current_slide.find('.dot[data-state="2"]').addClass( 'current' ); } else if( next_pos == 3 ) { current_slide.data( 'state', '3' ); current_slide.find( '.slide-content' ).fadeOut( 'slow' ); current_slide.find( '.slide-overlay' ).fadeOut( 'slow' ); current_slide.find( '.rf_featuredImage' ).fadeIn( 'slow' ); current_slide.find('.dot[data-state="3"]').addClass( 'current' ); } else { current_slide.data( 'state', '1' ); current_slide.find( '.slide-content' ).fadeOut( 'slow' ); current_slide.find( '.slide-overlay' ).fadeIn( 'slow' ); current_slide.find( '.rf_featuredImage' ).fadeIn( 'slow' ); current_slide.find('.dot[data-state="1"]').addClass( 'current' ); } } }); });