Source code for the PTG event scheduling bot
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 

168 lines
6.2 KiB

  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8">
  5. <meta http-equiv="refresh" content="180">
  6. <title>Project Teams Gathering - Currently at the PTG</title>
  7. <!-- Latest compiled and minified CSS -->
  8. <link rel="stylesheet" href="bootstrap-3.3.7.min.css" integrity="sha384-BVYiiSIFeK1dGmJRAkycuHAHRg32OmUcww7on3RYdg4Va+PmSTsz/K68vbdEjh4u" crossorigin="anonymous">
  9. </head>
  10. <body>
  11. <div class="container">
  12. <nav class="navbar navbar-default">
  13. <div class="container-fluid">
  14. <div class="navbar-header navbar-brand"><img src="/logo.png" height="22"></div>
  15. <div class="navbar-header navbar-brand">Project Teams Gathering</div>
  16. <div class="collapse navbar-collapse" id="bs-example-navbar-collapse-1">
  17. <ul class="nav navbar-nav">
  18. <li class="active"><a href="ptg.html">Currently at the PTG</a></li>
  19. <li><a href="etherpads.html">List of Etherpads</a></li>
  20. <li><a href="index.html">Useful links</a></li>
  21. </ul>
  22. </div>
  23. </div>
  24. </nav>
  25. <script id="MOTDTemplate" type="text/x-handlebars-template">
  26. {{#if motd.message}}
  27. <div class="alert alert-{{motd.level}}" role="alert">{{motd.message}}</div>
  28. {{/if}}
  29. </script>
  30. <div id="MOTD"></div>
  31. <p>See what is being discussed currently at the PTG, and what's coming next.<p>
  32. <div id="PTGsessions">
  33. </div>
  34. </div>
  35. <script id="PTGtemplate" type="text/x-handlebars-template">
  36. <style>
  37. .bot-help {
  38. font-size: 85%;
  39. font-style: italic;
  40. padding-left: 8px;
  41. padding-bottom: 4px;
  42. }
  43. {{#each colors as |color track|}}
  44. .{{track}} {
  45. background-color: {{color}};
  46. }
  47. {{/each}}
  48. </style>
  49. <div class="panel panel-default">
  50. <div class="panel-heading"><h3 class="panel-title">Current discussion topics</h3></div>
  51. <table class="table">
  52. {{#each tracks as |track| }}
  53. {{#if (lookup @root.now track) }}
  54. <tr>
  55. <td class="col-sm-1">{{trackbadge @root.urls @root.location @root.schedule track}}</span></td>
  56. <td>{{#trackContentLine}}{{lookup @root.now track}}{{/trackContentLine}}</td>
  57. <td>{{lookup @root.location track}}
  58. {{#if (checkins track)}}
  59. <a href="#" title="{{checkedin track}}">
  60. <span class="badge">{{checkins track}}</span>
  61. </a>
  62. {{/if}}
  63. </td>
  64. </tr>
  65. {{/if}}
  66. {{else}}
  67. <tr><td><small><i>Nothing yet</i></small><td></tr>
  68. {{/each}}
  69. </table>
  70. <div class="bot-help">
  71. Use <code>#TRACK now INFO</code> to set;
  72. this also clears "Coming up next..." info below.
  73. <a href="https://opendev.org/openstack/ptgbot/src/branch/master/README.rst">(more help)</a>
  74. </div>
  75. </div>
  76. <div class="panel panel-default">
  77. <div class="panel-heading"><h3 class="panel-title">Coming up next...</h3></div>
  78. <table class="table">
  79. {{#each tracks as |track| }}
  80. {{#if (lookup @root.next track) }}
  81. <tr>
  82. <td class="col-sm-1">{{trackbadge @root.urls @root.location @root.schedule track}}</span></td>
  83. <td>
  84. {{#each (lookup @root.next track) as |item|}}
  85. {{#trackContentLine}}{{item}}{{/trackContentLine}} <br/>
  86. {{/each}}
  87. </td>
  88. </tr>
  89. {{/if}}
  90. {{else}}
  91. <tr><td><small><i>Nothing yet</i></small><td></tr>
  92. {{/each}}
  93. </table>
  94. <div class="bot-help">
  95. Use <code>#TRACK next INFO</code> to append.
  96. <a href="https://opendev.org/openstack/ptgbot/src/branch/master/README.rst">(more help)</a>
  97. </div>
  98. </div>
  99. <div class="panel panel-default">
  100. <div class="panel-heading"><h3 class="panel-title">Scheduled tracks</h3></div>
  101. <div class="panel-body">
  102. <ul class="nav nav-tabs" role="tablist">
  103. {{#each slots as |times day|}}
  104. <li role="presentation"><a id='st{{day}}' href="#s{{day}}" aria-controls="s{{day}}" role="tab" data-toggle="tab">{{day}}</a></li>
  105. {{/each}}
  106. </ul>
  107. <!-- Tab panes -->
  108. <div class="tab-content">
  109. {{#each slots as |times day|}}
  110. <div role="tabpanel" class="tab-pane" id="s{{day}}">
  111. <table class="table table-condensed">
  112. <thead><tr><th></th>
  113. {{#each times as |time|}}
  114. <th>{{ displaytime time }}</th>
  115. {{/each}}
  116. </tr></thead>
  117. {{#each @root.schedule as |sched room|}}
  118. {{#if (roomactive @root.schedule room times)}}
  119. <tr><td>{{room}}{{#if sched.cap_icon}}
  120. <span class="glyphicon glyphicon-{{sched.cap_icon}}"
  121. title="{{sched.cap_desc}}"></span>{{/if}}</td>
  122. {{#each (lookup @root.slots day) as |time|}}
  123. <td>{{ roomcode @root.urls @root.schedule room time.name 0 }}</td>
  124. {{/each}}
  125. </tr>
  126. {{/if}}
  127. {{/each}}
  128. </table>
  129. </div>
  130. {{/each}}
  131. </div>
  132. </div>
  133. <div class="bot-help">
  134. Use <code>#TRACK book SLOTREF</code> to book one of the empty slots with the ptgbot.
  135. <a href="https://opendev.org/openstack/ptgbot/src/branch/master/README.rst">(more help)</a>
  136. </div>
  137. </div>
  138. <div class="panel panel-default">
  139. <div class="panel-heading"><h3 class="panel-title">Worried about missing discussions on your favourite topic?</h3></div>
  140. <div class="bot-help">
  141. Message the bot with <code>subscribe REGEXP</code> to get a
  142. notification message when any topic matching that REGEXP is being
  143. discussed or up next.
  144. <a href="https://opendev.org/openstack/ptgbot/src/branch/master/README.rst">(more help)</a>
  145. </div>
  146. </div>
  147. <div class="panel panel-default">
  148. <div class="panel-heading"><h3 class="panel-title">Looking for someone, or want to be easy to find?</h3></div>
  149. <div class="bot-help">
  150. Use <code>#seen NICK</code> to see if a user has checked in to a particular location.
  151. Use <code>#in LOCATION</code> to check in somewhere, and <code>#out</code> to check out.
  152. <br />
  153. Presence-tracking commands can also be sent privately to the bot.
  154. <a href="https://opendev.org/openstack/ptgbot/src/branch/master/README.rst">(more help)</a>
  155. </div>
  156. </div>
  157. <p class="text-muted">Content on this page is being driven by room operators through the <a href="https://opendev.org/openstack/ptgbot/src/branch/master/README.rst">openstackptg bot</a> on the <a href="http://eavesdrop.openstack.org/irclogs/%23openstack-ptg/">#openstack-ptg IRC channel</a>. It was last refreshed on {{timestamp}}.</p>
  158. </script>
  159. <script src="jquery-1.9.1.min.js"></script>
  160. <script src="handlebars-4.0.6.js"></script>
  161. <script src="bootstrap-3.3.7.min.js"></script>
  162. <script src="motd.js"></script>
  163. <script src="ptg.js"></script>
  164. </body>
  165. </html>