PageRenderTime 36ms CodeModel.GetById 16ms RepoModel.GetById 1ms app.codeStats 0ms

/BaliEnterpriseSystems/BaliEnterpriseSystems/BestStudentSchedule.aspx.cs

https://github.com/sirivedula/BEST
C# | 133 lines | 118 code | 12 blank | 3 comment | 16 complexity | e399a6b603cbc765486072c6e20340c2 MD5 | raw file
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Web;
  5. using System.Web.UI;
  6. using System.Web.UI.WebControls;
  7. using BaliEnterpriseSystems.BestObjects;
  8. using System.Text;
  9. using System.Data;
  10. using System.Data.OleDb;
  11. namespace BaliEnterpriseSystems
  12. {
  13. public partial class BestStudentSchedule : System.Web.UI.Page
  14. {
  15. protected void Page_Load(object sender, EventArgs e)
  16. {
  17. }
  18. protected void Page_LoadComplete(object sender, EventArgs e)
  19. {
  20. if (HttpContext.Current.Session["CurrentUser"] == null)
  21. {
  22. Response.Redirect("Logout.aspx");
  23. }
  24. ltrSubMenu.Text = UtilMenu.StudentMenu("studentschedule");
  25. if (!Utils.User.UserRoleByName("Student - Schedule").allowView)
  26. {
  27. ltrValidateMsg.Text = "You do not have rights to view.";
  28. return;
  29. }
  30. string ms = Request.QueryString["ms"];
  31. this.ltrMScript.Text = Utils.MenuSelectScript(ms);
  32. BestStudents bstd = new BestStudents();
  33. bstd.LoadRows("CenterId=?", Utils.User.CIdParam,"firstname");
  34. string selstudent = Request.Form["selStudent"];
  35. StringBuilder sb = new StringBuilder();
  36. sb.Append("");
  37. string selName = "";
  38. string emailaddress = "";
  39. for (int i = 0; i < bstd.TableRows.Count; i++)
  40. {
  41. string sname = bstd.TableRows[i].Fields["firstname"].fieldValue + " " + bstd.TableRows[i].Fields["lastname"].fieldValue;
  42. string sguid = bstd.TableRows[i].Fields["guidfield"].fieldValue;
  43. sb.Append("<option value=\"" + HttpUtility.HtmlEncode(sguid) + "\"");
  44. if (string.IsNullOrEmpty(selstudent))
  45. {
  46. selstudent = sguid;
  47. }
  48. if (sguid.Equals(selstudent))
  49. {
  50. selName = sname;
  51. emailaddress = bstd.TableRows[i].Fields["emailId"].fieldValue;
  52. sb.Append(" selected ");
  53. }
  54. sb.Append(">" + HttpUtility.HtmlEncode(sname) + "</option>");
  55. }
  56. ltrStudentOpts.Text = sb.ToString();
  57. string fromdate = Request.Form["fromdate"] ?? "";
  58. string todate = Request.Form["todate"] ?? "";
  59. DateTime today = DateTime.Today;
  60. int curweek = ((int)today.DayOfWeek) * -1;
  61. if (string.IsNullOrEmpty(fromdate))
  62. {
  63. fromdate = today.AddDays(curweek).ToString("MM/dd/yyyy");
  64. }
  65. if (string.IsNullOrEmpty(todate))
  66. {
  67. todate = today.AddDays(curweek).AddDays(7).ToString("MM/dd/yyyy");
  68. }
  69. ltrLoadScript.Text = "<script type=\"text/javascript\">$(document).ready(function(){$('#fromdate').val('" + fromdate + "'); $('#todate').val('" + todate + @"');
  70. }); </script>";
  71. if (!string.IsNullOrEmpty(selstudent))
  72. {
  73. string tsql = "select Date, [Sunday], [Monday], [Tuesday], [Wednesday], [Thursday], [Friday], [Saturday] from VBestSchedules where ";
  74. tsql += "(stuGuid1='" + selstudent + "' or stuGuid2='" + selstudent + "' or stuGuid3='" + selstudent + "' or stuGuid4='" + selstudent + "' or stuGuid5='" + selstudent + "') and convert(datetime,date) between '" + fromdate + @"' and '" + todate + @"' order by convert(datetime, date), convert(numeric, schfrom)";
  75. StringBuilder sbSchd = new StringBuilder();
  76. BestDatabase db = new BestDatabase();
  77. OleDbCommand myCmd = db.dbCmd;
  78. myCmd.CommandText = tsql;
  79. OleDbDataReader tblReader = myCmd.ExecuteReader(CommandBehavior.KeyInfo);
  80. //Retrieve column schema into a DataTable.
  81. DataTable schemaTable = tblReader.GetSchemaTable();
  82. sbSchd.Append("<table cellpadding=\"0\" style=\"padding:1px;font-family:Tahoma;font-size:12px;border:1px solid #999;background-color:#A11117\"><tr>");
  83. //For each field in the table...
  84. int fieldCnt = 0;
  85. foreach (DataRow myField in schemaTable.Rows)
  86. {
  87. fieldCnt++; if (fieldCnt > 8) break;
  88. sbSchd.Append("<th style=\"color:#000;background-color:#E9BA15;padding:2px;\">" + myField[0] + "</th>");
  89. }
  90. sbSchd.Append("</tr>");
  91. int cnt = 0;
  92. while (tblReader.Read())
  93. {
  94. string trclass = (cnt % 2 == 0) ? "" : "trordd";
  95. sbSchd.Append("<tr style=\"font-family:Tahoma;color:#FFF;font-size:12px;\"><td>" + (tblReader[0].ToString()) + "</td>");
  96. sbSchd.Append("<td>" + Utils.ToTimeFormat(tblReader[1].ToString()) + "</td>");
  97. sbSchd.Append("<td>" + Utils.ToTimeFormat(tblReader[2].ToString()) + "</td>");
  98. sbSchd.Append("<td>" + Utils.ToTimeFormat(tblReader[3].ToString()) + "</td>");
  99. sbSchd.Append("<td>" + Utils.ToTimeFormat(tblReader[4].ToString()) + "</td>");
  100. sbSchd.Append("<td>" + Utils.ToTimeFormat(tblReader[5].ToString()) + "</td>");
  101. sbSchd.Append("<td>" + Utils.ToTimeFormat(tblReader[6].ToString()) + "</td>");
  102. sbSchd.Append("<td>" + Utils.ToTimeFormat(tblReader[7].ToString()) + "</td></tr>");
  103. cnt++;
  104. }
  105. tblReader.Close();
  106. sbSchd.Append("</table>");
  107. ltrSchdules.Text = sbSchd.ToString();
  108. /* Sending EMail */
  109. string sendEClick = Request.Form["sendEMailClick"] ?? "";
  110. if (!string.IsNullOrEmpty(sendEClick) && sendEClick.Equals("1") && emailaddress.Length > 0)
  111. {
  112. string emailbody = "Dear " + selName + "<br />Following is your Schedule from " + fromdate + " to " + todate + ":<br />" + sbSchd.ToString() + "<br />Thank you<br />Bali Learning";
  113. if (Utils.User.emailUtil.Send(emailaddress, "Schedule Info", emailbody, selName))
  114. {
  115. ltrEMessage.Text = "EMail Sent To: " + Server.HtmlEncode(emailaddress);
  116. }
  117. }
  118. }
  119. }
  120. }
  121. }