MainWindow.cs 4.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157
  1. using ErgometerLibrary;
  2. using System;
  3. using System.Collections.Generic;
  4. using System.ComponentModel;
  5. using System.Data;
  6. using System.Drawing;
  7. using System.Linq;
  8. using System.Text;
  9. using System.Threading.Tasks;
  10. using System.Windows.Forms;
  11. namespace ErgometerDoctorApplication
  12. {
  13. public partial class MainWindow : Form
  14. {
  15. private int request;
  16. public bool updateSession;
  17. public MainWindow()
  18. {
  19. InitializeComponent();
  20. MainClient.Init(this);
  21. updateSession = false;
  22. conPanelLogin.BringToFront();
  23. request = 2;
  24. updateTimer.Start();
  25. }
  26. private void BtnActiveSessions_Click(object sender, EventArgs e)
  27. {
  28. this.HeaderLabel.Text = "Actieve Sessies";
  29. if(MainClient.activesessions.Count > 0)
  30. {
  31. conActiveSessions.labelActiveSessions.Text = "";
  32. conActiveSessions.updateActiveSessions(MainClient.activesessions);
  33. }
  34. else
  35. {
  36. conActiveSessions.updateActiveSessions(MainClient.activesessions);
  37. conActiveSessions.labelActiveSessions.Text = "Er zijn geen actieve sessies.";
  38. }
  39. conActiveSessions.BringToFront();
  40. }
  41. private void BtnClientData_Click(object sender, EventArgs e)
  42. {
  43. this.HeaderLabel.Text = "Clientenbestand";
  44. if (MainClient.users.Count > 0)
  45. {
  46. conClientData.updateUsers(MainClient.users);
  47. }
  48. conClientData.BringToFront();
  49. }
  50. private void BtnBroadcast_Click(object sender, EventArgs e)
  51. {
  52. this.HeaderLabel.Text = "Broadcast";
  53. conClientBroadcast.BringToFront();
  54. }
  55. private void BtnSessionHistory_Click(object sender, EventArgs e)
  56. {
  57. this.HeaderLabel.Text = "Sessie geschiedenis";
  58. if (MainClient.oldSessionsData.Count > 0)
  59. {
  60. conSessionHistory.labelSessionHistory.Text = "";
  61. conSessionHistory.updateHistory(MainClient.oldSessionsData);
  62. }
  63. else
  64. {
  65. conSessionHistory.updateHistory(MainClient.oldSessionsData);
  66. conSessionHistory.labelSessionHistory.Text = "Er zijn geen oude sessies.";
  67. }
  68. conSessionHistory.BringToFront();
  69. }
  70. public void validateLogin()
  71. {
  72. string error = "";
  73. bool connect = MainClient.Connect(conPanelLogin.textBoxPassword.Text, out error);
  74. if (connect)
  75. {
  76. conPanelLogin.textBoxPassword.Text = "";
  77. conPanelLogin.labelLoginInfo.Text = "";
  78. if (MainClient.activesessions.Count > 0)
  79. {
  80. conActiveSessions.labelActiveSessions.Text = "";
  81. conActiveSessions.updateActiveSessions(MainClient.activesessions);
  82. }
  83. showDashboard();
  84. }
  85. else
  86. {
  87. conPanelLogin.labelLoginInfo.Text = error;
  88. showLoginScreen();
  89. }
  90. }
  91. private void buttonLogout_Click(object sender, EventArgs e)
  92. {
  93. MainClient.Disconnect();
  94. showLoginScreen();
  95. }
  96. private void showDashboard()
  97. {
  98. conPanelLogin.Visible = false;
  99. MainContainer.Visible = true;
  100. panel1.Visible = true;
  101. MenuPanel.Visible = true;
  102. menuStrip1.Visible = true;
  103. }
  104. private void showLoginScreen()
  105. {
  106. MainContainer.Visible = false;
  107. panel1.Visible = false;
  108. MenuPanel.Visible = false;
  109. menuStrip1.Visible = false;
  110. conPanelLogin.Visible = true;
  111. conPanelLogin.BringToFront();
  112. }
  113. private void updateTimer_tick(object sender, EventArgs e)
  114. {
  115. if (updateSession)
  116. {
  117. BtnActiveSessions_Click(this, new EventArgs());
  118. updateSession = false;
  119. }
  120. if (request == 0)
  121. MainClient.SendNetCommand(new NetCommand(NetCommand.RequestType.USERS, MainClient.Session));
  122. else if (request == 1)
  123. MainClient.SendNetCommand(new NetCommand(NetCommand.RequestType.SESSIONDATA, MainClient.Session));
  124. else if (request == 2)
  125. MainClient.SendNetCommand(new NetCommand(NetCommand.RequestType.ALLSESSIONS, MainClient.Session));
  126. request ++;
  127. if (request > 2)
  128. {
  129. request = 0;
  130. }
  131. }
  132. }
  133. }