room.html 8.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139
  1. <template name="room">
  2. <div class="landing">
  3. {{#if loaded}}
  4. <div class="row">
  5. <div class="col-md-9" id="station-main">
  6. <nav>
  7. <a class="back" href="/"><i class="fa fa-chevron-left"></i></a>
  8. {{#if isAdmin}}
  9. {{#if paused}}
  10. <i class="fa fa-play fa-1" id="play"></i>
  11. {{else}}
  12. <i class="fa fa-pause fa-1" id="pause"></i>
  13. {{/if}}
  14. <i class="fa fa-step-forward fa-1" id="skip"></i>
  15. <i class="fa fa-random fa-1" id="shuffle"></i>
  16. {{/if}}
  17. <h3>
  18. {{{type}}}
  19. </h3>
  20. <div id="volume-container">
  21. <i class="fa fa-volume-down" id="volume-icon"></i>
  22. <input type="text" id="volume-slider" class="span2" value="" data-slider-min="0" data-slider-max="100" data-slider-step="1" data-slider-value="50" data-slider-orientation="horizontal" data-slider-selection="after" data-slider-tooltip="hide">
  23. </div>
  24. </nav>
  25. <div id="seeker-container">
  26. <div id="seeker-bar"></div>
  27. </div>
  28. <div class="row" id="song-media">
  29. <div class="col-md-8">
  30. <div class="embed-responsive embed-responsive-16by9" id="media-container">
  31. <!--div id="player" class="embed-responsive-item"></div-->
  32. </div>
  33. </div>
  34. <div class="col-md-4" style="margin-top:15px">
  35. <img class="song-img" onError="this.src='http://static.boredpanda.com/blog/wp-content/uploads/2014/04/amazing-fox-photos-182.jpg'" id="song-img"/>
  36. <h2 class="room-title">{{{title}}}</h2>
  37. <h2 class="room-artist">{{{artist}}}</h2>
  38. </div>
  39. </div>
  40. <div class="row" id="settings">
  41. <div class="col-md-3">
  42. {{#if currentUser}}
  43. <button type="button" id="song-modal" class="button" data-toggle="modal" data-target="#myModal">Add songs</button>
  44. {{else}}
  45. <button title="You need to be logged in to add songs." type="button" class="button btn btn-disabled" disabled>Add songs</button>
  46. {{/if}}
  47. </div>
  48. <div class="col-md-3">
  49. <button type="button" id="toggle-video" class="button">Hide video</button>
  50. </div>
  51. <div class="col-md-3">
  52. {{#if currentUser}}
  53. <button title="Smile to this song." type="button" id="smile-modal" class="btn btn-success btn-lg"><i class="fa fa-smile-o"> 79</i></button>
  54. <button title="I dislike this song." type="button" id="meh-modal" class="btn btn-danger btn-lg"><i class="fa fa-meh-o"> 14</i></button>
  55. <button title="Report this song!" type="button" id="song-modal" class="btn btn-warning btn-lg"><i class="fa fa-flag"></i></button>
  56. {{else}}
  57. <button title="You need to be logged to smile to this song." type="button" id="smile-modal" class="btn btn-success btn-lg" data-toggle="modal" data-target="#myModal" disabled><i class="fa fa-smile-o"> 79</i></button>
  58. <button title="You need to be logged to dislike this song." type="button" id="meh-modal" class="btn btn-danger btn-lg" data-toggle="modal" data-target="#myModal" disabled><i class="fa fa-meh-o"> 14</i></button>
  59. <button title="You need to be logged to report this song!" type="button" id="song-modal" class="btn btn-warning btn-lg" data-toggle="modal" data-target="#myModal" disabled><i class="fa fa-flag"></i></button>
  60. {{/if}}
  61. </div>
  62. </div>
  63. </div>
  64. <div class="col-md-3" id="side-panel">
  65. {{> playlist}}
  66. </div>
  67. </div>
  68. <!-- Modal -->
  69. <div id="myModal" class="modal fade" role="dialog">
  70. <div class="modal-dialog">
  71. <!-- Modal content-->
  72. <div class="modal-content">
  73. <div class="modal-header">
  74. <button type="button" class="close" data-dismiss="modal">&times;</button>
  75. <h4 class="modal-title">Search for a song</h4>
  76. </div>
  77. <div class="modal-body">
  78. <div id="search-info">
  79. <select name="type" id="search_type" class="song-input-select">
  80. <option name="youtube" id="search_youtube">YouTube</option>
  81. <option name="soundcloud" id="search_soundcloud">SoundCloud</option>
  82. </select>
  83. <input type="text" id="song-input" class="song-input">
  84. <button type="button" id="search-song" class="button">Search</button>
  85. <div id="song-results"></div>
  86. </div>
  87. <div id="add-info" style="display:none">
  88. <button type="button" id="return" class="button">Return</button>
  89. <label for="type" class="song-input-label">Song Type</label>
  90. <select name="type" id="type" class="song-input-select">
  91. <option name="youtube" id="youtube">YouTube</option>
  92. <option name="soundcloud" id="soundcloud">SoundCloud</option>
  93. </select>
  94. <label for="id" class="song-input-label">Song ID</label>
  95. <input class="song-input" name="id" id="id" type="text" />
  96. <label for="id" class="song-input-label">Song Artist</label>
  97. <input class="song-input" name="artist" id="artist" type="text" />
  98. <label for="title" class="song-input-label">Song Title</label>
  99. <input class="song-input" name="title" id="title" type="text" />
  100. <label for="img" class="song-input-label">Song Img</label>
  101. <input class="song-input" name="img" id="img" type="text" />
  102. <button type="button" id="add-song-button" class="button">Add Song</button>
  103. </div>
  104. <!--small id="search-alert">Searching for a song fills out the above fields automatically, but you will still have to verify them.</small-->
  105. </div>
  106. <div class="modal-footer">
  107. <button id="close-modal" type="button" class="btn btn-default" data-dismiss="modal">Close</button>
  108. </div>
  109. </div>
  110. </div>
  111. </div>
  112. {{else}}
  113. {{> loading}}
  114. {{/if}}
  115. <ul class="bg-bubbles">
  116. <li></li>
  117. <li></li>
  118. <li></li>
  119. <li></li>
  120. <li></li>
  121. <li></li>
  122. <li></li>
  123. <li></li>
  124. <li></li>
  125. <li></li>
  126. </ul>
  127. </div>
  128. <script type="text/javascript">
  129. window.doorbellOptions = {
  130. appKey: 'v2Gu14c8s9HgBsAFCXNWIm2vlk11N12Plt2Wu5k2MbQIkM1Ao6kOTCbfN95ElEVM',
  131. hideEmail: true
  132. };
  133. (function(d, t) {
  134. var g = d.createElement(t);g.id = 'doorbellScript';g.type = 'text/javascript';g.async = true;g.src = 'https://embed.doorbell.io/button/2408?t='+(new Date().getTime());(d.getElementsByTagName('head')[0]||d.getElementsByTagName('body')[0]).appendChild(g);
  135. }(document, 'script'));
  136. </script>
  137. </template>