home.html 7.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142
  1. <template name="home">
  2. {{> header}}
  3. <main>
  4. {{> alerts}}
  5. <div class="row">
  6. <div class="col m10 offset-m1">
  7. <h3 class="center-align">Official Rooms</h3>
  8. <hr class="center-block" style="width: 99%">
  9. <div class="row">
  10. {{#each rooms}}
  11. {{#if private}}
  12. {{#if isModerator}}
  13. <div class="col m4 l2 red">
  14. <div class="card hoverable">
  15. <div class="card-image waves-effect waves-block waves-light">
  16. <a href=/{{type}}>
  17. <img onerror="this.src='/notes.png'" src={{currentSong.song.img}}>
  18. <figcaption class="caption center-align">
  19. <h5>{{currentSong.song.title}}</h5>
  20. <h5>{{currentSong.song.artist}}</h5>
  21. </figcaption>
  22. </a>
  23. </div>
  24. <div class="card-content">
  25. <span class="card-title grey-text text-darken-4">{{display}}</span><div><span class="user-num">{{userNum}}</span> <i class="material-icons">perm_identity</i></div>
  26. <p>{{roomDesc}}</p>
  27. </div>
  28. <div class="card-action">
  29. <a href=/{{type}} class="teal-text text-accent-4">Join Room</a>
  30. </div>
  31. </div>
  32. </div>
  33. {{/if}}
  34. {{else}}
  35. <div class="col m4 l2">
  36. <div class="card hoverable">
  37. <div class="card-image waves-effect waves-block waves-light">
  38. <a href=/{{type}}>
  39. <img onerror="this.src='/notes.png'" src={{currentSong.song.img}}>
  40. <figcaption class="caption center-align">
  41. <h5>{{currentSong.song.title}}</h5>
  42. <h5>{{currentSong.song.artist}}</h5>
  43. </figcaption>
  44. </a>
  45. </div>
  46. <div class="card-content">
  47. <span class="card-title grey-text text-darken-4">{{display}}</span><div><span class="user-num">{{userNum}}</span> <i class="material-icons">perm_identity</i></div>
  48. <p>{{roomDesc}}</p>
  49. </div>
  50. <div class="card-action">
  51. <a href=/{{type}} class="teal-text text-accent-4">Join Room</a>
  52. </div>
  53. </div>
  54. </div>
  55. {{/if}}
  56. {{/each}}
  57. </div>
  58. <h3 class="center-align">Private Rooms <a href="#create_private_room" id="create_private_room_modal_button"><i class="material-icons">add</i></a></h3>
  59. <hr class="center-block" style="width: 99%">
  60. <div class="row">
  61. {{#each privateRooms}}
  62. {{#if private}}
  63. {{#if isAllowedInPrivateRoom name}}
  64. <div class="col m4 l2 light-blue">
  65. <div class="card hoverable">
  66. <div class="card-image waves-effect waves-block waves-light">
  67. <a href=/private/{{name}}>
  68. <img src='/notes.png'>
  69. <figcaption class="caption center-align">
  70. <h5>{{currentPrivateSong.song.title}}</h5>
  71. </figcaption>
  72. </a>
  73. </div>
  74. <div class="card-content">
  75. <span class="card-title grey-text text-darken-4">{{displayName}}</span><div><span class="user-num">{{userPrivateNum}}</span> <i class="material-icons">perm_identity</i></div>
  76. <p>{{roomDesc}}</p>
  77. </div>
  78. <div class="card-action">
  79. <a href=/private/{{name}} class="teal-text text-accent-4">Join Room</a>
  80. </div>
  81. </div>
  82. </div>
  83. {{/if}}
  84. {{else}}
  85. <div class="col m4 l2">
  86. <div class="card hoverable">
  87. <div class="card-image waves-effect waves-block waves-light">
  88. <a href=/private/{{name}}>
  89. <img src='/notes.png'>
  90. <figcaption class="caption center-align">
  91. <h5>{{currentPrivateSong.song.title}}</h5>
  92. </figcaption>
  93. </a>
  94. </div>
  95. <div class="card-content">
  96. <span class="card-title grey-text text-darken-4">{{displayName}}</span><div><span class="user-num">{{userPrivateNum}}</span> <i class="material-icons">perm_identity</i></div>
  97. <p>{{roomDesc}}</p>
  98. </div>
  99. <div class="card-action">
  100. <a href=/private/{{name}} class="teal-text text-accent-4">Join Room</a>
  101. </div>
  102. </div>
  103. </div>
  104. {{/if}}
  105. {{/each}}
  106. </div>
  107. </div>
  108. </div>
  109. </main>
  110. {{> footer}}
  111. <div id="create_private_room" class="modal">
  112. <div class="modal-content">
  113. <h4>Create Modal</h4>
  114. <div class="input-field">
  115. <input id="create_private_room_name" type="text">
  116. <label for="create_private_room_name">Name</label>
  117. </div>
  118. <div class="input-field">
  119. <input id="create_private_room_display_name" type="text">
  120. <label for="create_private_room_display_name">Display Name</label>
  121. </div>
  122. <div class="input-field">
  123. <input id="create_private_room_description" type="text">
  124. <label for="create_private_room_description">Description</label>
  125. </div>
  126. <button class="btn waves-effect waves-light" id="create_private_room_submit">Create</button>
  127. </div>
  128. <div class="divider"></div>
  129. <div class="modal-footer">
  130. <a class="modal-action modal-close waves-effect btn">Close</a>
  131. </div>
  132. </div>
  133. <script>
  134. $("#create_private_room_modal_button").leanModal({
  135. dismissible: true,
  136. opacity: .5,
  137. in_duration: 500,
  138. out_duration: 200
  139. });
  140. </script>
  141. </template>