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.

WelcomePage.js 2.9KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697
  1. /* global $, interfaceConfig, APP */
  2. var animateTimeout, updateTimeout;
  3. var RoomnameGenerator = require("../../util/RoomnameGenerator");
  4. import UIUtil from "../util/UIUtil";
  5. function enter_room() {
  6. var val = $("#enter_room_field").val();
  7. if(!val) {
  8. val = $("#enter_room_field").attr("room_name");
  9. }
  10. if (val) {
  11. window.location.pathname = "/" + val;
  12. }
  13. }
  14. function animate(word) {
  15. var currentVal = $("#enter_room_field").attr("placeholder");
  16. $("#enter_room_field").attr("placeholder", currentVal + word.substr(0, 1));
  17. animateTimeout = setTimeout(function() {
  18. animate(word.substring(1, word.length));
  19. }, 70);
  20. }
  21. function update_roomname() {
  22. var word = RoomnameGenerator.generateRoomWithoutSeparator();
  23. $("#enter_room_field").attr("room_name", word);
  24. $("#enter_room_field").attr("placeholder", "");
  25. clearTimeout(animateTimeout);
  26. animate(word);
  27. updateTimeout = setTimeout(update_roomname, 10000);
  28. }
  29. function setupWelcomePage() {
  30. $("#videoconference_page").hide();
  31. $("#domain_name").text(
  32. window.location.protocol + "//" + window.location.host + "/");
  33. if (interfaceConfig.SHOW_JITSI_WATERMARK) {
  34. var leftWatermarkDiv =
  35. $("#welcome_page_header div[class='watermark leftwatermark']");
  36. if(leftWatermarkDiv && leftWatermarkDiv.length > 0) {
  37. leftWatermarkDiv.css({display: 'block'});
  38. UIUtil.setLinkHref(
  39. leftWatermarkDiv.parent(),
  40. interfaceConfig.JITSI_WATERMARK_LINK);
  41. }
  42. }
  43. if (interfaceConfig.SHOW_BRAND_WATERMARK) {
  44. var rightWatermarkDiv =
  45. $("#welcome_page_header div[class='watermark rightwatermark']");
  46. if(rightWatermarkDiv && rightWatermarkDiv.length > 0) {
  47. rightWatermarkDiv.css({display: 'block'});
  48. UIUtil.setLinkHref(
  49. rightWatermarkDiv.parent(),
  50. interfaceConfig.BRAND_WATERMARK_LINK);
  51. rightWatermarkDiv.get(0).style.backgroundImage =
  52. "url(images/rightwatermark.png)";
  53. }
  54. }
  55. if (interfaceConfig.SHOW_POWERED_BY) {
  56. $("#welcome_page_header>a[class='poweredby']")
  57. .css({display: 'block'});
  58. }
  59. $("#enter_room_button").click(function() {
  60. enter_room();
  61. });
  62. $("#enter_room_field").keydown(function (event) {
  63. if (event.keyCode === 13 /* enter */) {
  64. enter_room();
  65. }
  66. });
  67. if (interfaceConfig.GENERATE_ROOMNAMES_ON_WELCOME_PAGE !== false) {
  68. var selector = $("#reload_roomname");
  69. selector.click(function () {
  70. clearTimeout(updateTimeout);
  71. clearTimeout(animateTimeout);
  72. update_roomname();
  73. });
  74. selector.show();
  75. update_roomname();
  76. }
  77. $("#disable_welcome").click(function () {
  78. APP.settings.setWelcomePageEnabled(
  79. !$("#disable_welcome").is(":checked")
  80. );
  81. });
  82. }
  83. module.exports = setupWelcomePage;