document.write('
Data hosted with ♥ by Pastebin.com - Download Raw - See Original
  1. <%@ Page
  2. Title="Teacher Schedules"
  3. Language="vb"
  4. EnableEventValidation="false"
  5. AutoEventWireup="false"
  6. MasterPageFile="~/Knowledge Academy.Master"
  7. CodeBehind="TeacherSchedules.aspx.vb"
  8. Inherits="Knowledge_Academy.TeacherSchedules" %>
  9.  
  10. <asp:Content
  11. ID="ContentHeader"
  12. ContentPlaceHolderID="HeaderPlaceholder"
  13. runat="server">
  14. <style type="text/css">
  15. .auto-style1
  16. {
  17. font-size: large;
  18. }
  19. </style>
  20. </asp:Content>
  21.  
  22. <asp:Content
  23. ID="ContentBody"
  24. ContentPlaceHolderID="BodyPlaceholder"
  25. runat="server">
  26.  
  27. <% '-- Datasources -- %>
  28. <% '----------------- %>
  29. <asp:SqlDataSource
  30. ID="SqlDataSourceDetails"
  31. runat="server"
  32.  
  33. ConnectionString="<%$ ConnectionStrings:Knowledge Academy %>"
  34.  
  35. DeleteCommand=
  36. "DELETE FROM [TeacherSchedule]
  37. WHERE [ID] = @ID"
  38.  
  39. InsertCommand=
  40. "INSERT INTO [TeacherSchedule]
  41. ([DayOfWeekMonday],
  42. [DayOfWeekTuesday],
  43. [DayOfWeekWednesday],
  44. [DayOfWeekThursday],
  45. [DayOfWeekFriday],
  46. [DayOfWeekSaturday],
  47. [DayOfWeekSunday],
  48. [StartTime],
  49. [EndTime],
  50. [ClassID],
  51. [TeacherID])
  52. VALUES (@DayOfWeekMonday,
  53. @DayOfWeekTuesday,
  54. @DayOfWeekWednesday,
  55. @DayOfWeekThursday,
  56. @DayOfWeekFriday,
  57. @DayOfWeekSaturday,
  58. @DayOfWeekSunday,
  59. @StartTime,
  60. @EndTime,
  61. @ClassID,
  62. @TeacherID)"
  63.  
  64. SelectCommand=
  65. "SELECT TeacherSchedule.ID, TeacherSchedule.StartTime, TeacherSchedule.EndTime, TeacherSchedule.TeacherID, TeacherSchedule.ClassID,
  66. TeacherSchedule.DayOfWeekMonday,
  67. TeacherSchedule.DayOfWeekTuesday,
  68. TeacherSchedule.DayOfWeekWednesday,
  69. TeacherSchedule.DayOfWeekThursday,
  70. TeacherSchedule.DayOfWeekFriday,
  71. TeacherSchedule.DayOfWeekSaturday,
  72. TeacherSchedule.DayOfWeekSunday,
  73. Classes.ClassName, Classes.Grade
  74. FROM TeacherSchedule
  75. INNER JOIN Classes ON TeacherSchedule.ClassID = Classes.ID
  76. INNER JOIN Teachers ON TeacherSchedule.TeacherID = Teachers.ID
  77. WHERE (TeacherSchedule.ID = @ID)"
  78.  
  79. UpdateCommand=
  80. "UPDATE [TeacherSchedule]
  81. SET [DayOfWeekMonday] = @DayOfWeekMonday,
  82. [DayOfWeekTuesday] = @DayOfWeekTuesday,
  83. [DayOfWeekWednesday] = @DayOfWeekWednesday,
  84. [DayOfWeekThursday] = @DayOfWeekFriday,
  85. [DayOfWeekFriday] = @DayOfWeekFriday,
  86. [DayOfWeekSaturday] = @DayOfWeekSaturday,
  87. [DayOfWeekSunday] = @DayOfWeekSunday,
  88. [StartTime] = @StartTime,
  89. [EndTime] = @EndTime,
  90. [ClassID] = @ClassID,
  91. [TeacherID] = @TeacherID
  92. WHERE [ID] = @ID">
  93.  
  94. <DeleteParameters>
  95. <asp:Parameter Name="ID" Type="Int32" />
  96. </DeleteParameters>
  97.  
  98. <InsertParameters>
  99. <asp:Parameter
  100. Name="DayOfWeekMonday"
  101. Type="Boolean"/>
  102.  
  103. <asp:ControlParameter
  104. ControlID="LabelCheckBoxTuesday"
  105. Name="DayOfWeekTuesday"
  106. PropertyName="Text"
  107. Type="String" />
  108.  
  109. <asp:ControlParameter
  110. ControlID="LabelCheckBoxWednesday"
  111. Name="DayOfWeekWednesday"
  112. PropertyName="Text"
  113. Type="String" />
  114.  
  115. <asp:ControlParameter
  116. ControlID="LabelCheckBoxThursday"
  117. Name="DayOfWeekThursday"
  118. PropertyName="Text"
  119. Type="String" />
  120.  
  121. <asp:ControlParameter
  122. ControlID="LabelCheckBoxFriday"
  123. Name="DayOfWeekFriday"
  124. PropertyName="Text"
  125. Type="String" />
  126.  
  127. <asp:ControlParameter
  128. ControlID="LabelCheckBoxSaturday"
  129. Name="DayOfWeekSaturday"
  130. PropertyName="Text"
  131. Type="String" />
  132.  
  133. <asp:ControlParameter
  134. ControlID="LabelCheckBoxSunday"
  135. Name="DayOfWeekSunday"
  136. PropertyName="Text"
  137. Type="String" />
  138.  
  139. <asp:Parameter Name="StartTime" Type="String" />
  140. <asp:Parameter Name="EndTime" Type="String" />
  141. <asp:Parameter Name="ClassID" Type="Int32" />
  142. <asp:Parameter Name="TeacherID" Type="Int32" />
  143. </InsertParameters>
  144.  
  145. <SelectParameters>
  146. <asp:ControlParameter ControlID="GridViewSummary" Name="ID" PropertyName="SelectedValue" Type="Int32" />
  147. </SelectParameters>
  148.  
  149. <UpdateParameters>
  150. <asp:ControlParameter
  151. ControlID="LabelCheckBoxMonday"
  152. Name="DayOfWeekMonday"
  153. PropertyName="Text"
  154. Type="String" />
  155.  
  156. <asp:ControlParameter
  157. ControlID="LabelCheckBoxTuesday"
  158. Name="DayOfWeekTuesday"
  159. PropertyName="Text"
  160. Type="String" />
  161.  
  162. <asp:ControlParameter
  163. ControlID="LabelCheckBoxWednesday"
  164. Name="DayOfWeekWednesday"
  165. PropertyName="Text"
  166. Type="String" />
  167.  
  168. <asp:ControlParameter
  169. ControlID="LabelCheckBoxThursday"
  170. Name="DayOfWeekThursday"
  171. PropertyName="Text"
  172. Type="String" />
  173.  
  174. <asp:ControlParameter
  175. ControlID="LabelCheckBoxFriday"
  176. Name="DayOfWeekFriday"
  177. PropertyName="Text"
  178. Type="String" />
  179.  
  180. <asp:ControlParameter
  181. ControlID="LabelCheckBoxSaturday"
  182. Name="DayOfWeekSaturday"
  183. PropertyName="Text"
  184. Type="String" />
  185.  
  186. <asp:ControlParameter
  187. ControlID="LabelCheckBoxSunday"
  188. Name="DayOfWeekSunday"
  189. PropertyName="Text"
  190. Type="String" />
  191.  
  192. <asp:Parameter Name="StartTime" Type="String" />
  193. <asp:Parameter Name="EndTime" Type="String" />
  194. <asp:Parameter Name="ClassID" Type="Int32" />
  195. <asp:Parameter Name="TeacherID" Type="Int32" />
  196. <asp:Parameter Name="ID" />
  197. </UpdateParameters>
  198. </asp:SqlDataSource>
  199.  
  200. <asp:SqlDataSource
  201. ID="SqlDataSourceClasses"
  202. runat="server"
  203.  
  204. ConnectionString="<%$ ConnectionStrings:Knowledge Academy %>"
  205.  
  206. SelectCommand=
  207. "SELECT NULL AS ID, NULL AS ClassName, NULL AS Grade
  208. UNION SELECT ID, ClassName + ' *** Grade: ' + Grade AS ClassName, Grade
  209. FROM Classes
  210. ORDER BY 2, 3">
  211. </asp:SqlDataSource>
  212.  
  213. <asp:SqlDataSource
  214. ID="SqlDataSourceTeachers"
  215. runat="server"
  216.  
  217. ConnectionString="<%$ ConnectionStrings:Knowledge Academy %>"
  218.  
  219. SelectCommand=
  220. "SELECT NULL AS ID, NULL AS TeacherName
  221. UNION SELECT ID, Surname + ', ' + Forename AS TeacherName
  222. FROM Teachers
  223. ORDER BY 2">
  224. </asp:SqlDataSource>
  225.  
  226. <% '-- Ajax enable this area so flicker us cut down to a minumum. -- %>
  227. <% '---------------------------------------------------------------- %>
  228. <asp:UpdatePanel
  229. ID="UpdatePanelSummary"
  230. runat="server"
  231. UpdateMode="Always">
  232.  
  233. <ContentTemplate>
  234.  
  235. <h1>Teacher Schedule Maintenance</h1>
  236.  
  237. <p>
  238. <asp:Table ID="TableTeacherSchedules" runat="server" Width="1058px" Visible="False">
  239. <asp:TableHeaderRow>
  240. <asp:TableHeaderCell HorizontalAlign="Left">Starting</asp:TableHeaderCell>
  241. <asp:TableHeaderCell HorizontalAlign="Left">Ending</asp:TableHeaderCell>
  242. <asp:TableHeaderCell HorizontalAlign="Left">Mon</asp:TableHeaderCell>
  243. <asp:TableHeaderCell HorizontalAlign="Left">Tue</asp:TableHeaderCell>
  244. <asp:TableHeaderCell HorizontalAlign="Left">Wed</asp:TableHeaderCell>
  245. <asp:TableHeaderCell HorizontalAlign="Left">Thu</asp:TableHeaderCell>
  246. <asp:TableHeaderCell HorizontalAlign="Left">Fri</asp:TableHeaderCell>
  247. <asp:TableHeaderCell HorizontalAlign="Left">Sat</asp:TableHeaderCell>
  248. <asp:TableHeaderCell HorizontalAlign="Left">Sun</asp:TableHeaderCell>
  249.  
  250. <asp:TableHeaderCell HorizontalAlign="Left">Class</asp:TableHeaderCell>
  251. <asp:TableHeaderCell HorizontalAlign="Left">Grade</asp:TableHeaderCell>
  252. <asp:TableHeaderCell HorizontalAlign="Left">Teacher</asp:TableHeaderCell>
  253. </asp:TableHeaderRow>
  254.  
  255. <asp:TableRow runat="server">
  256. </asp:TableRow>
  257. </asp:Table>
  258. </p>
  259.  
  260. <p>Schedule Search:
  261. <asp:TextBox
  262. ID="TextBoxSearch"
  263. runat="server"
  264. Width="207px"
  265. Text="ALL">
  266. </asp:TextBox>
  267.  
  268. <asp:Button
  269. ID="ButtonSearch"
  270. runat="server"
  271. Text="Search"
  272. OnClick="ButtonSearch_Click" />
  273.  
  274. <asp:Button
  275. ID="ButtonSearchAll"
  276. runat="server"
  277. Text="Show ALL Schedules"
  278. OnClick="ButtonSearchAll_Click"/>
  279. </p>
  280.  
  281. <p>
  282. <strong><span class="auto-style1">To send an email of this schedule, enter the email address of whom you wish to send it to then click the envelope.</span></strong>
  283. </p>
  284.  
  285. <p>
  286. Recipient:
  287. <asp:TextBox ID="TextBoxEmailRecipient" runat="server" Width="203px"></asp:TextBox>
  288. <strong><span class="auto-style1">&nbsp;</span></strong>
  289.  
  290. <asp:ImageButton
  291. ID="ImageButtonEmailThisList"
  292. runat="server"
  293. BorderStyle="None"
  294. ImageUrl="~/Images/email1.png"
  295. OnClick="ImageButtonEmailThisList_Click"
  296. ToolTip="Email this Schedule as a report."
  297. />
  298. </p>
  299.  
  300. <p>
  301. <asp:Label ID="LabelEmailMessage" runat="server" style="font-weight: 700; color: black">
  302.  
  303. </asp:Label>
  304. </p>
  305.  
  306. <% '-- GridView (Grid) for summary. -- %>
  307. <% '-- The user chooses a Schedule from here and details are shown in a DetailsView. -- %>
  308. <% '------------------------------------------------------------------------------------ %>
  309.  
  310. <asp:GridView
  311. ID="GridViewSummary"
  312. runat="server"
  313. AllowSorting="True"
  314. AutoGenerateColumns="False"
  315. DataKeyNames="ID"
  316. Width="869px" AllowPaging="True" PageSize="5">
  317.  
  318. <Columns>
  319.  
  320. <asp:TemplateField HeaderText="Start Time" SortExpression="StartTime">
  321. <ItemTemplate>
  322. <asp:Label ID="LabelStartTime" runat="server"
  323. Text='<%# DateTime.Parse(Eval("StartTime").ToString()).ToString("hh:mm tt") %>'></asp:Label>
  324. </ItemTemplate>
  325. <HeaderStyle HorizontalAlign="Right" />
  326. <ItemStyle HorizontalAlign="Right" />
  327. </asp:TemplateField>
  328.  
  329. <asp:TemplateField HeaderText="End Time" SortExpression="EndTime">
  330. <ItemTemplate>
  331. <asp:Label ID="LabelEndTime" runat="server"
  332. Text='<%# DateTime.Parse(Eval("EndTime").ToString()).ToString("hh:mm tt") %>'></asp:Label>
  333. </ItemTemplate>
  334. <HeaderStyle HorizontalAlign="Right" />
  335. <ItemStyle HorizontalAlign="Right" />
  336. </asp:TemplateField>
  337.  
  338. <asp:TemplateField HeaderText="Mon" SortExpression="DayOfWeekMonday" >
  339. <ItemTemplate>
  340. <asp:ImageButton
  341. ID="ImageButtonDayOfWeekMonday" runat="server"
  342. ImageUrl='<%# getChecked(Eval("DayOfWeekMonday")) %>' Height="15" Width="15" />
  343. </ItemTemplate>
  344. </asp:TemplateField>
  345.  
  346. <asp:TemplateField HeaderText="Tue" SortExpression="DayOfWeekTuesday">
  347. <ItemTemplate>
  348. <asp:ImageButton
  349. ID="ImageButtonDayOfWeekTuesday" runat="server"
  350. ImageUrl='<%# getChecked(Eval("DayOfWeekTuesday")) %>' Height="15" Width="15" />
  351. </ItemTemplate>
  352. </asp:TemplateField>
  353.  
  354. <asp:TemplateField HeaderText="Wed" SortExpression="DayOfWeekWednesday">
  355. <ItemTemplate>
  356. <asp:ImageButton
  357. ID="ImageButtonDayOfWeekWednesday" runat="server"
  358. ImageUrl='<%# getChecked(Eval("DayOfWeekWednesday")) %>' Height="15" Width="15" />
  359. </ItemTemplate>
  360. </asp:TemplateField>
  361.  
  362. <asp:TemplateField HeaderText="Thu" SortExpression="DayOfWeekThursday">
  363. <ItemTemplate>
  364. <asp:ImageButton
  365. ID="ImageButtonDayOfWeekThursday" runat="server"
  366. ImageUrl='<%# getChecked(Eval("DayOfWeekThursday")) %>' Height="15" Width="15" />
  367. </ItemTemplate>
  368. </asp:TemplateField>
  369.  
  370. <asp:TemplateField HeaderText="Fri" SortExpression="DayOfWeekFriday">
  371. <ItemTemplate>
  372. <asp:ImageButton
  373. ID="ImageButtonDayOfWeekFriday" runat="server"
  374. ImageUrl='<%# getChecked(Eval("DayOfWeekFriday")) %>' Height="15" Width="15" />
  375. </ItemTemplate>
  376. </asp:TemplateField>
  377.  
  378. <asp:TemplateField HeaderText="Sat" SortExpression="DayOfWeekSaturday">
  379. <ItemTemplate>
  380. <asp:ImageButton
  381. ID="ImageButtonDayOfWeekSaturday" runat="server"
  382. ImageUrl='<%# getChecked(Eval("DayOfWeekSaturday")) %>' Height="15" Width="15" />
  383. </ItemTemplate>
  384. </asp:TemplateField>
  385.  
  386. <asp:TemplateField HeaderText="Sun" SortExpression="DayOfWeekSunday">
  387. <ItemTemplate>
  388. <asp:ImageButton
  389. ID="ImageButtonDayOfWeekSunday" runat="server"
  390. ImageUrl='<%# getChecked(Eval("DayOfWeekSunday")) %>' Height="15" Width="15" />
  391. </ItemTemplate>
  392. </asp:TemplateField>
  393.  
  394. <asp:BoundField DataField="ClassName" HeaderText="Class"
  395. SortExpression="ClassName" >
  396.  
  397. <HeaderStyle HorizontalAlign="Left" />
  398. <ItemStyle HorizontalAlign="Left" />
  399. </asp:BoundField>
  400.  
  401. <asp:BoundField DataField="Grade" HeaderText="Grade"
  402. SortExpression="Grade" >
  403.  
  404. <HeaderStyle HorizontalAlign="Left" />
  405. <ItemStyle HorizontalAlign="Left" />
  406. </asp:BoundField>
  407.  
  408. <asp:BoundField DataField="TeacherName" HeaderText="Teacher"
  409. SortExpression="TeacherName" >
  410.  
  411. <HeaderStyle HorizontalAlign="Left" />
  412. <ItemStyle HorizontalAlign="Left" />
  413. </asp:BoundField>
  414.  
  415. <asp:TemplateField ShowHeader="False">
  416. <ItemTemplate>
  417. <asp:Button
  418. ID="ButtonSelect"
  419. runat="server"
  420. CausesValidation="False"
  421. CommandName="Select"
  422. Text="Select Schedule Item Details" />
  423. </ItemTemplate>
  424. </asp:TemplateField>
  425. </Columns>
  426. </asp:GridView>
  427.  
  428. <% '-- Button to add a new Schedule to the list -- %>
  429. <% '---------------------------------------------- %>
  430. <asp:Button
  431. ID="ButtonAddNewScheduleItem"
  432. runat="server"
  433. Text="Add a New Schedule Item to this List" />
  434.  
  435. <br />
  436.  
  437. <h1>Details</h1>
  438.  
  439. <% '-- DetailsView (Grid) for details of the GridView -- %>
  440. <% '---------------------------------------------------- %>
  441. <asp:DetailsView
  442. ID="DetailsView"
  443. runat="server"
  444. AutoGenerateRows="False"
  445. Height="50px"
  446. Width="207px"
  447. DataSourceID="SqlDataSourceDetails"
  448. DataKeyNames="ID"
  449. OnItemCommand="DetailsViewDetails_ItemCommand">
  450.  
  451. <Fields>
  452. <asp:TemplateField ShowHeader="False">
  453. <EditItemTemplate>
  454. <asp:Button ID="ButtonUpdate" runat="server" CausesValidation="True"
  455. CommandName="Update" Text="Update" />
  456. &nbsp;<asp:Button ID="ButtonCancelUpdate" runat="server" CausesValidation="False"
  457. CommandName="Cancel" Text="Cancel" />
  458. </EditItemTemplate>
  459.  
  460. <InsertItemTemplate>
  461. <asp:Button ID="ButtonInsert" runat="server" CausesValidation="True"
  462. CommandName="Insert" Text="Insert" OnClick="ButtonInsert_Click" />
  463. &nbsp;<asp:Button ID="ButtonCancelInsert" runat="server" CausesValidation="False"
  464. CommandName="Cancel" Text="Cancel" />
  465. </InsertItemTemplate>
  466.  
  467. <ItemTemplate>
  468. <asp:Button ID="ButtonEdit" runat="server" CausesValidation="False"
  469. CommandName="Edit" Text="Edit" OnClick="ButtonEdit_Click"/>
  470. &nbsp;<asp:Button ID="ButtonNew" runat="server" CausesValidation="False"
  471. CommandName="New" Text="New" />
  472. &nbsp;<asp:Button ID="ButtonDelete" runat="server" CausesValidation="False"
  473. CommandName="Delete" Text="Delete" />
  474.  
  475. <AjaxToolKit:ConfirmButtonExtender ID="deleteButtonConfirmation"
  476. runat="server"
  477. ConfirmText='<%# "You are about to remove schedule item for: " & vbcr &
  478. " *** Grade: " & Eval("Grade") & "!!!" &
  479. vbcrlf & "Are you sure you want to do this?" & vbcrlf &
  480. "Clicking the OK button will delete this schedule item." %>'
  481. Enabled="True"
  482. TargetControlID="ButtonDelete">
  483.  
  484. </AjaxToolKit:ConfirmButtonExtender>
  485. </ItemTemplate>
  486. </asp:TemplateField>
  487.  
  488. <asp:BoundField DataField="ID" HeaderText="ID" InsertVisible="False"
  489. ReadOnly="True" SortExpression="ID" Visible="False" />
  490.  
  491. <asp:TemplateField HeaderText="Starting At:" SortExpression="StartTime">
  492. <EditItemTemplate>
  493. <asp:TextBox ID="TextBoxStartTime" runat="server" Text='<%# Bind("StartTime") %>'></asp:TextBox>
  494.  
  495. <asp:RequiredFieldValidator ID="RequiredFieldValidatorEditStartTime" runat="server" ControlToValidate="TextBoxStartTime"
  496. ErrorMessage="Please enter the Start Time here." Font-Bold="True" Font-Italic="True" ForeColor="Red"
  497. SetFocusOnError="True" Display="Dynamic"></asp:RequiredFieldValidator>
  498. </EditItemTemplate>
  499.  
  500. <InsertItemTemplate>
  501. <asp:TextBox ID="TextBoxStartTime" runat="server" Text='<%# Bind("StartTime") %>'></asp:TextBox>
  502.  
  503. <asp:RequiredFieldValidator ID="RequiredFieldValidatorInsertStartTime" runat="server" ControlToValidate="TextBoxStartTime"
  504. ErrorMessage="Please enter the Start Time here." Font-Bold="True" Font-Italic="True" ForeColor="Red"
  505. SetFocusOnError="True" Display="Dynamic"></asp:RequiredFieldValidator>
  506. </InsertItemTemplate>
  507.  
  508. <ItemTemplate>
  509. <asp:Label ID="LabelStartTime" runat="server"
  510. Text='<%# DateTime.Parse(Eval("StartTime").ToString()).ToString("hh:mm tt") %>'></asp:Label>
  511. </ItemTemplate>
  512.  
  513. <ItemStyle ForeColor="Blue" />
  514. </asp:TemplateField>
  515.  
  516. <asp:TemplateField HeaderText="Ending At:" SortExpression="EndTime">
  517. <EditItemTemplate>
  518. <asp:TextBox ID="TextBoxEndTime" runat="server" Text='<%# Bind("EndTime") %>'></asp:TextBox>
  519.  
  520. <asp:RequiredFieldValidator ID="RequiredFieldValidatorEditEndTime" runat="server" ControlToValidate="TextBoxEndTime"
  521. ErrorMessage="Please enter the End Time here." Font-Bold="True" Font-Italic="True" ForeColor="Red"
  522. SetFocusOnError="True" Display="Dynamic"></asp:RequiredFieldValidator>
  523. </EditItemTemplate>
  524.  
  525. <InsertItemTemplate>
  526. <asp:TextBox ID="TextBoxEndTime" runat="server" Text='<%# Bind("EndTime") %>'></asp:TextBox>
  527.  
  528. <asp:RequiredFieldValidator ID="RequiredFieldValidatorInsertEndTime" runat="server" ControlToValidate="TextBoxEndTime"
  529. ErrorMessage="Please enter the End Time here." Font-Bold="True" Font-Italic="True" ForeColor="Red"
  530. SetFocusOnError="True" Display="Dynamic"></asp:RequiredFieldValidator>
  531. </InsertItemTemplate>
  532.  
  533. <ItemTemplate>
  534. <asp:Label ID="LabelEndTime" runat="server"
  535. Text='<%# DateTime.Parse(Eval("EndTime").ToString()).ToString("hh:mm tt") %>'></asp:Label>
  536. </ItemTemplate>
  537.  
  538. <ItemStyle ForeColor="Blue" />
  539. </asp:TemplateField>
  540.  
  541. <asp:TemplateField HeaderText="Monday:" SortExpression="DayOfWeekMonday" >
  542. <EditItemTemplate>
  543. <asp:ImageButton
  544. ID="ImageButtonEditDayOfWeekMonday"
  545. runat="server"
  546. ImageUrl='<%# getChecked(Eval("DayOfWeekMonday"))%>'
  547. Height="15"
  548. Width="15"
  549. OnClick="ImageButtonEditDayOfWeekMonday_Click"
  550. CausesValidation="False"
  551. CommandName="Emad"
  552. CommandArgument="Monday, Edit">
  553. </asp:ImageButton>
  554. </EditItemTemplate>
  555.  
  556. <InsertItemTemplate>
  557. <asp:ImageButton
  558. ID="ImageButtonInsertDayOfWeekMonday"
  559. runat="server"
  560. ImageUrl='<%# getChecked(Eval("DayOfWeekMonday"))%>'
  561. Height="15"
  562. Width="15"
  563. OnClick="ImageButtonInsertDayOfWeekMonday_Click"
  564. CausesValidation="False">
  565. </asp:ImageButton>
  566. </InsertItemTemplate>
  567.  
  568. <ItemTemplate>
  569. <asp:ImageButton
  570. ID="ImageButtonItemDayOfWeekMonday"
  571. runat="server"
  572. ImageUrl='<%# getChecked(Eval("DayOfWeekMonday"))%>'
  573. Height="15"
  574. Width="15">
  575. </asp:ImageButton>
  576. </ItemTemplate>
  577. </asp:TemplateField>
  578.  
  579. <asp:TemplateField HeaderText="Tuesday:">
  580. <EditItemTemplate>
  581. <asp:ImageButton
  582. ID="ImageButtonEditDayOfWeekTuesday"
  583. runat="server"
  584. ImageUrl='<%# getChecked(Eval("DayOfWeekTuesday"))%>'
  585. Height="15"
  586. Width="15"
  587. OnClick="ImageButtonEditDayOfWeekTuesday_Click"
  588. CausesValidation="False">
  589. </asp:ImageButton>
  590. </EditItemTemplate>
  591.  
  592. <InsertItemTemplate>
  593. <asp:ImageButton
  594. ID="ImageButtonInsertDayOfWeekTuesday"
  595. runat="server"
  596. ImageUrl='<%# getChecked(Eval("DayOfWeekTuesday"))%>'
  597. Height="15"
  598. Width="15"
  599. OnClick="ImageButtonInsertDayOfWeekTuesday_Click"
  600. CausesValidation="False">
  601. </asp:ImageButton>
  602. </InsertItemTemplate>
  603.  
  604. <ItemTemplate>
  605. <asp:ImageButton
  606. ID="ImageButtonItemDayOfWeekTuesday"
  607. runat="server"
  608. ImageUrl='<%# getChecked(Eval("DayOfWeekTuesday"))%>'
  609. Height="15"
  610. Width="15">
  611. </asp:ImageButton>
  612. </ItemTemplate>
  613. </asp:TemplateField>
  614.  
  615. <asp:TemplateField HeaderText="Wednesday:">
  616. <EditItemTemplate>
  617. <asp:ImageButton
  618. ID="ImageButtonEditDayOfWeekWednesday"
  619. runat="server"
  620. ImageUrl='<%# getChecked(Eval("DayOfWeekWednesday"))%>'
  621. Height="15"
  622. Width="15"
  623. OnClick="ImageButtonEditDayOfWeekWednesday_Click"
  624. CausesValidation="False">
  625. </asp:ImageButton>
  626. </EditItemTemplate>
  627.  
  628. <InsertItemTemplate>
  629. <asp:ImageButton
  630. ID="ImageButtonInsertDayOfWeekWednesday"
  631. runat="server"
  632. ImageUrl='<%# getChecked(Eval("DayOfWeekWednesday"))%>'
  633. Height="15"
  634. Width="15"
  635. OnClick="ImageButtonInsertDayOfWeekWednesday_Click"
  636. CausesValidation="False">
  637. </asp:ImageButton>
  638. </InsertItemTemplate>
  639.  
  640. <ItemTemplate>
  641. <asp:ImageButton
  642. ID="ImageButtonItemDayOfWeekWednesday"
  643. runat="server"
  644. ImageUrl='<%# getChecked(Eval("DayOfWeekWednesday"))%>'
  645. Height="15"
  646. Width="15">
  647. </asp:ImageButton>
  648. </ItemTemplate>
  649. </asp:TemplateField>
  650.  
  651. <asp:TemplateField HeaderText="Thursday:">
  652. <EditItemTemplate>
  653. <asp:ImageButton
  654. ID="ImageButtonEditDayOfWeekThursday"
  655. runat="server"
  656. ImageUrl='<%# getChecked(Eval("DayOfWeekThursday"))%>'
  657. Height="15"
  658. Width="15"
  659. OnClick="ImageButtonEditDayOfWeekThursday_Click"
  660. CausesValidation="False">
  661. </asp:ImageButton>
  662. </EditItemTemplate>
  663.  
  664. <InsertItemTemplate>
  665. <asp:ImageButton
  666. ID="ImageButtonInsertDayOfWeekThursday"
  667. runat="server"
  668. ImageUrl='<%# getChecked(Eval("DayOfWeekThursday"))%>'
  669. Height="15"
  670. Width="15"
  671. OnClick="ImageButtonInsertDayOfWeekThursday_Click"
  672. CausesValidation="False">
  673. </asp:ImageButton>
  674. </InsertItemTemplate>
  675.  
  676. <ItemTemplate>
  677. <asp:ImageButton
  678. ID="ImageButtonItemDayOfWeekThursday"
  679. runat="server"
  680. ImageUrl='<%# getChecked(Eval("DayOfWeekThursday"))%>'
  681. Height="15"
  682. Width="15">
  683. </asp:ImageButton>
  684. </ItemTemplate>
  685. </asp:TemplateField>
  686.  
  687. <asp:TemplateField HeaderText="Friday:">
  688. <EditItemTemplate>
  689. <asp:ImageButton
  690. ID="ImageButtonEditDayOfWeekFriday"
  691. runat="server"
  692. ImageUrl='<%# getChecked(Eval("DayOfWeekFriday"))%>'
  693. Height="15"
  694. Width="15"
  695. OnClick="ImageButtonEditDayOfWeekFriday_Click"
  696. CausesValidation="False">
  697. </asp:ImageButton>
  698. </EditItemTemplate>
  699.  
  700. <InsertItemTemplate>
  701. <asp:ImageButton
  702. ID="ImageButtonInsertDayOfWeekFriday"
  703. runat="server"
  704. ImageUrl='<%# getChecked(Eval("DayOfWeekFriday"))%>'
  705. Height="15"
  706. Width="15"
  707. OnClick="ImageButtonInsertDayOfWeekFriday_Click"
  708. CausesValidation="False">
  709. </asp:ImageButton>
  710. </InsertItemTemplate>
  711.  
  712. <ItemTemplate>
  713. <asp:ImageButton
  714. ID="ImageButtonItemDayOfWeekFriday"
  715. runat="server"
  716. ImageUrl='<%# getChecked(Eval("DayOfWeekFriday"))%>'
  717. Height="15"
  718. Width="15">
  719. </asp:ImageButton>
  720. </ItemTemplate>
  721. </asp:TemplateField>
  722.  
  723. <asp:TemplateField HeaderText="Saturday:">
  724. <EditItemTemplate>
  725. <asp:ImageButton
  726. ID="ImageButtonEditDayOfWeekSaturday"
  727. runat="server"
  728. ImageUrl='<%# getChecked(Eval("DayOfWeekSaturday"))%>'
  729. Height="15"
  730. Width="15"
  731. OnClick="ImageButtonEditDayOfWeekSaturday_Click"
  732. CausesValidation="False">
  733. </asp:ImageButton>
  734. </EditItemTemplate>
  735.  
  736. <InsertItemTemplate>
  737. <asp:ImageButton
  738. ID="ImageButtonInsertDayOfWeekSaturday"
  739. runat="server"
  740. ImageUrl='<%# getChecked(Eval("DayOfWeekSaturday"))%>'
  741. Height="15"
  742. Width="15"
  743. OnClick="ImageButtonInsertDayOfWeekSaturday_Click"
  744. CausesValidation="False">
  745. </asp:ImageButton>
  746. </InsertItemTemplate>
  747.  
  748. <ItemTemplate>
  749. <asp:ImageButton
  750. ID="ImageButtonItemDayOfWeekSaturday"
  751. runat="server"
  752. ImageUrl='<%# getChecked(Eval("DayOfWeekSaturday"))%>'
  753. Height="15"
  754. Width="15">
  755. </asp:ImageButton>
  756. </ItemTemplate>
  757. </asp:TemplateField>
  758.  
  759. <asp:TemplateField HeaderText="Sunday:">
  760. <EditItemTemplate>
  761. <asp:ImageButton
  762. ID="ImageButtonEditDayOfWeekSunday"
  763. runat="server"
  764. ImageUrl='<%# getChecked(Eval("DayOfWeekSunday"))%>'
  765. Height="15"
  766. Width="15"
  767. OnClick="ImageButtonEditDayOfWeekSunday_Click"
  768. CausesValidation="False">
  769. </asp:ImageButton>
  770. </EditItemTemplate>
  771.  
  772. <InsertItemTemplate>
  773. <asp:ImageButton
  774. ID="ImageButtonInsertDayOfWeekSunday"
  775. runat="server"
  776. ImageUrl='<%# getChecked(Eval("DayOfWeekSunday"))%>'
  777. Height="15"
  778. Width="15"
  779. OnClick="ImageButtonInsertDayOfWeekSunday_Click"
  780. CausesValidation="False">
  781. </asp:ImageButton>
  782. </InsertItemTemplate>
  783.  
  784. <ItemTemplate>
  785. <asp:ImageButton
  786. ID="ImageButtonItemDayOfWeekSunday"
  787. runat="server"
  788. ImageUrl='<%# getChecked(Eval("DayOfWeekSunday"))%>'
  789. Height="15"
  790. Width="15">
  791. </asp:ImageButton>
  792. </ItemTemplate>
  793. </asp:TemplateField>
  794.  
  795. <asp:TemplateField HeaderText="Class:" SortExpression="ClassID">
  796. <EditItemTemplate>
  797.  
  798. <asp:DropDownList
  799. ID="DropDownListClass"
  800. Runat="server"
  801. DataSourceID="SqlDataSourceClasses"
  802. DataTextField = "ClassName"
  803. DataValueField="ID"
  804. SelectedValue='<%# Bind("ClassID") %>'
  805. ForeColor="Blue">
  806. </asp:DropDownList>
  807.  
  808. <asp:RequiredFieldValidator ID="RequiredFieldValidatorEditClass" runat="server" ControlToValidate="DropDownListClass"
  809. ErrorMessage="Please select a Class here." Font-Bold="True" Font-Italic="True" ForeColor="Red"
  810. SetFocusOnError="True" Display="Dynamic">
  811.  
  812. </asp:RequiredFieldValidator>
  813.  
  814. </EditItemTemplate>
  815.  
  816. <InsertItemTemplate>
  817.  
  818. <asp:DropDownList
  819. ID="DropDownListClass"
  820. Runat="server"
  821. DataSourceID="SqlDataSourceClasses"
  822. DataTextField = "ClassName"
  823. DataValueField="ID"
  824. SelectedValue='<%# Bind("ClassID") %>'
  825. ForeColor="Blue">
  826. </asp:DropDownList>
  827.  
  828. <asp:RequiredFieldValidator ID="RequiredFieldValidatorInsertClass" runat="server" ControlToValidate="DropDownListClass"
  829. ErrorMessage="Please select a Class here." Font-Bold="True" Font-Italic="True" ForeColor="Red"
  830. SetFocusOnError="True" Display="Dynamic">
  831.  
  832. </asp:RequiredFieldValidator>
  833. </InsertItemTemplate>
  834.  
  835. <ItemTemplate>
  836.  
  837. <asp:DropDownList
  838. ID="DropDownListClass"
  839. Runat="server"
  840. DataSourceID="SqlDataSourceClasses"
  841. DataTextField = "ClassName"
  842. DataValueField="ID"
  843. SelectedValue='<%# Bind("ClassID") %>'
  844. Enabled="false"
  845. ForeColor="Blue"
  846. Font-Bold="true">
  847. </asp:DropDownList>
  848.  
  849. </ItemTemplate>
  850. </asp:TemplateField>
  851.  
  852. <asp:TemplateField HeaderText="Teacher:" SortExpression="TeacherID">
  853. <EditItemTemplate>
  854.  
  855. <asp:DropDownList
  856. ID="DropDownListTeacher"
  857. Runat="server"
  858. DataSourceID="SqlDataSourceTeachers"
  859. DataTextField = "TeacherName"
  860. DataValueField="ID"
  861. SelectedValue='<%# Bind("TeacherID") %>'
  862. ForeColor="Blue">
  863. </asp:DropDownList>
  864.  
  865. <asp:RequiredFieldValidator ID="RequiredFieldValidatorInsertTeacher" runat="server" ControlToValidate="DropDownListTeacher"
  866. ErrorMessage="Please select a Teacher here." Font-Bold="True" Font-Italic="True" ForeColor="Red"
  867. SetFocusOnError="True" Display="Dynamic">
  868.  
  869. </asp:RequiredFieldValidator>
  870. </EditItemTemplate>
  871.  
  872. <InsertItemTemplate>
  873. <asp:DropDownList
  874. ID="DropDownListTeacher"
  875. Runat="server"
  876. DataSourceID="SqlDataSourceTeachers"
  877. DataTextField = "TeacherName"
  878. DataValueField="ID"
  879. SelectedValue='<%# Bind("TeacherID") %>'
  880. ForeColor="Blue">
  881. </asp:DropDownList>
  882.  
  883. <asp:RequiredFieldValidator ID="RequiredFieldValidatorEditTeacher" runat="server" ControlToValidate="DropDownListTeacher"
  884. ErrorMessage="Please select a Teacher here." Font-Bold="True" Font-Italic="True" ForeColor="Red"
  885. SetFocusOnError="True" Display="Dynamic">
  886.  
  887. </asp:RequiredFieldValidator>
  888. </InsertItemTemplate>
  889.  
  890. <ItemTemplate>
  891. <asp:DropDownList
  892. ID="DropDownListTeacher"
  893. Runat="server"
  894. DataSourceID="SqlDataSourceTeachers"
  895. DataTextField = "TeacherName"
  896. DataValueField="ID"
  897. SelectedValue='<%# Bind("TeacherID") %>'
  898. Enabled="false"
  899. ForeColor="Blue"
  900. Font-Bold="true">
  901. </asp:DropDownList>
  902.  
  903. </ItemTemplate>
  904. </asp:TemplateField>
  905. </Fields>
  906.  
  907. <HeaderTemplate>
  908. <%#IIf(Eval("DayOfWeekMonday") = Nothing,
  909. "Adding New Teacher Schedule Item", "Details For: " &
  910. " *** Grade: " & Eval("Grade") )%>
  911. </HeaderTemplate>
  912. </asp:DetailsView>
  913.  
  914. <br />
  915.  
  916. <asp:Label
  917. ID="LabelCheckBoxMonday"
  918. runat="server"
  919. Text="False">
  920. </asp:Label>
  921.  
  922. <asp:Label
  923. ID="LabelCheckBoxTuesday"
  924. runat="server"
  925. Visible="false"
  926. Text="False">
  927. </asp:Label>
  928.  
  929. <asp:Label
  930. ID="LabelCheckBoxWednesday"
  931. runat="server"
  932. Visible="false"
  933. Text="False">
  934. </asp:Label>
  935.  
  936. <asp:Label
  937. ID="LabelCheckBoxThursday"
  938. runat="server"
  939. Visible="false"
  940. Text="False">
  941. </asp:Label>
  942.  
  943. <asp:Label
  944. ID="LabelCheckBoxFriday"
  945. runat="server"
  946. Visible="false"
  947. Text="False">
  948. </asp:Label>
  949.  
  950. <asp:Label
  951. ID="LabelCheckBoxSaturday"
  952. runat="server"
  953. Visible="false"
  954. Text="False">
  955. </asp:Label>
  956.  
  957. <asp:Label
  958. ID="LabelCheckBoxSunday"
  959. runat="server"
  960. Visible="false"
  961. Text="False">
  962. </asp:Label>
  963. </ContentTemplate>
  964. </asp:UpdatePanel>
  965.  
  966. </asp:Content>
  967.  
  968.  
  969.  
  970. Imports System.Data
  971. Imports System.Data.SqlClient
  972. Imports System.IO
  973. Imports System.Net.Mail
  974.  
  975. Public Class TeacherSchedules
  976. Inherits System.Web.UI.Page
  977.  
  978. Public Shared blnDayOfWeekMonday As Boolean
  979.  
  980. Dim ObjMailMessage As New MailMessage()
  981.  
  982. ' Database objects.
  983. '------------------
  984. Dim theTableAdapter As New DataSetSchedulesTableAdapters.DataTableTableAdapterSchedules
  985.  
  986. ' This sub routine is needed so .RenderControl will work.
  987. '--------------------------------------------------------
  988. Public Overrides Sub VerifyRenderingInServerForm(control As Control)
  989. Return
  990. End Sub
  991.  
  992. Private Sub TeacherSchedules_Init(sender As Object, e As EventArgs) Handles Me.Init
  993.  
  994. ' Load the data from the database into the GridView.
  995. '---------------------------------------------------
  996. GridViewSummary.DataSource = theTableAdapter.GetDataByAll(TextBoxSearch.Text)
  997. GridViewSummary.DataBind()
  998.  
  999. End Sub
  1000.  
  1001. Protected Sub ButtonAddNewTeacher_Click(sender As Object, e As EventArgs) Handles ButtonAddNewScheduleItem.Click
  1002.  
  1003. ' Place the DetailsView into Insert mode.
  1004. '----------------------------------------
  1005. DetailsView.ChangeMode(DetailsViewMode.Insert)
  1006. End Sub
  1007.  
  1008. Function FormatAsMixedCase(StrValueToConvert As String) As String
  1009.  
  1010. ' Format as mixed case.
  1011. '----------------------
  1012. Return StrConv(StrValueToConvert, VbStrConv.ProperCase)
  1013.  
  1014. End Function
  1015.  
  1016. Function FormatAsUpperCase(StrValueToConvert As String) As String
  1017.  
  1018. ' Format as mixed case.
  1019. '----------------------
  1020. Return StrConv(StrValueToConvert, VbStrConv.Uppercase)
  1021.  
  1022. End Function
  1023.  
  1024. Function IsValidPhoneNumber(ByVal pStringToFormat As String) As String
  1025.  
  1026. If pStringToFormat <> "" Then
  1027.  
  1028. ' Remove all the grouping characters for
  1029. ' now. They will be back in later.
  1030. '---------------------------------------
  1031. pStringToFormat = Replace(pStringToFormat, "(", "")
  1032. pStringToFormat = Replace(pStringToFormat, ")", "")
  1033. pStringToFormat = Replace(pStringToFormat, "-", "")
  1034. pStringToFormat = Replace(pStringToFormat, " ", "")
  1035. pStringToFormat = Replace(pStringToFormat, "X", "x")
  1036.  
  1037. ' Format according to length.
  1038. '----------------------------
  1039. Try
  1040.  
  1041. Select Case pStringToFormat.Length
  1042. Case 7
  1043. pStringToFormat = CLng(pStringToFormat).ToString("###-####")
  1044.  
  1045. Case 10
  1046. pStringToFormat = CLng(pStringToFormat).ToString("(###) ###-####")
  1047.  
  1048. Case Else
  1049. pStringToFormat = "Fix Phone Number"
  1050.  
  1051. End Select
  1052.  
  1053. Catch ex As Exception
  1054. pStringToFormat = "Fix Phone Number"
  1055. End Try
  1056. End If
  1057.  
  1058. Return pStringToFormat
  1059. End Function
  1060.  
  1061. Protected Sub DetailsViewDetails_ItemCommand(sender As Object, e As System.Web.UI.WebControls.DetailsViewCommandEventArgs)
  1062.  
  1063. Select Case e.CommandName
  1064.  
  1065. Case "Add"
  1066.  
  1067. Case "Edit"
  1068. ButtonAddNewScheduleItem.Enabled = False
  1069.  
  1070. Case "Delete"
  1071.  
  1072. Case "Update"
  1073. ButtonAddNewScheduleItem.Enabled = True
  1074.  
  1075. Case "Insert"
  1076.  
  1077. End Select
  1078. End Sub
  1079.  
  1080. Private Sub DetailsView_ItemDeleted(sender As Object, e As DetailsViewDeletedEventArgs) Handles DetailsView.ItemDeleted
  1081.  
  1082. ' Refresh the data so current values are displayed.
  1083. '--------------------------------------------------
  1084. GridViewSummary.DataSource = theTableAdapter.GetDataByAll(TextBoxSearch.Text)
  1085. GridViewSummary.DataBind()
  1086. End Sub
  1087.  
  1088. Private Sub DetailsView_ItemInserted(sender As Object, e As DetailsViewInsertedEventArgs) Handles DetailsView.ItemInserted
  1089.  
  1090. ' Refresh the data so current values are displayed.
  1091. '--------------------------------------------------
  1092. GridViewSummary.DataSource = theTableAdapter.GetDataByAll(TextBoxSearch.Text)
  1093. GridViewSummary.DataBind()
  1094. End Sub
  1095.  
  1096. Private Sub DetailsView_ItemUpdated(sender As Object, e As DetailsViewUpdatedEventArgs) Handles DetailsView.ItemUpdated
  1097.  
  1098. ' Refresh the data so current values are displayed.
  1099. '--------------------------------------------------
  1100. GridViewSummary.DataSource = theTableAdapter.GetDataByAll(TextBoxSearch.Text)
  1101. GridViewSummary.DataBind()
  1102. End Sub
  1103.  
  1104. Protected Sub ImageButtonEmailThisList_Click(sender As Object, e As ImageClickEventArgs)
  1105.  
  1106. Dim strTableTeacherSchedules As String =
  1107. "<h1>Teacher Schedule</h1>" & _
  1108. ""
  1109. Dim strClassName As String = ""
  1110.  
  1111. Dim st As New DataSetSchedulesTableAdapters.DataTableTableAdapterSchedules
  1112. Dim dt As DataTable = st.GetDataByAll(TextBoxSearch.Text)
  1113.  
  1114. TableTeacherSchedules.Visible = True
  1115.  
  1116. Using reader As DataTableReader = dt.CreateDataReader()
  1117. While reader.Read()
  1118. Dim objStartTimeTableCell As New TableCell
  1119. Dim objEndTimeTableCell As New TableCell
  1120. Dim objMondayTableCell As New TableCell
  1121. Dim objTuesdayTableCell As New TableCell
  1122. Dim objWednesdayTableCell As New TableCell
  1123. Dim objThursdayTableCell As New TableCell
  1124. Dim objFridayTableCell As New TableCell
  1125. Dim objSaturdayTableCell As New TableCell
  1126. Dim objSundayTableCell As New TableCell
  1127.  
  1128. Dim objClassNameTableCell As New TableCell
  1129. Dim objGradeTableCell As New TableCell
  1130. Dim objTeacherNameTableCell As New TableCell
  1131.  
  1132. objStartTimeTableCell.Text = DateTime.Parse(reader.Item("StartTime").ToString()).ToString("hh:mm tt")
  1133. objEndTimeTableCell.Text = DateTime.Parse(reader.Item("EndTime").ToString()).ToString("hh:mm tt")
  1134.  
  1135. objMondayTableCell.Text = reader.Item("DayOfWeekMonday")
  1136. objTuesdayTableCell.Text = reader.Item("DayOfWeekTuesday")
  1137. objWednesdayTableCell.Text = reader.Item("DayOfWeekWednesday")
  1138. objThursdayTableCell.Text = reader.Item("DayOfWeekThursday")
  1139. objFridayTableCell.Text = reader.Item("DayOfWeekFriday")
  1140. objSaturdayTableCell.Text = reader.Item("DayOfWeekSaturday")
  1141. objSundayTableCell.Text = reader.Item("DayOfWeekSunday")
  1142.  
  1143. If objMondayTableCell.Text = True Then
  1144. objMondayTableCell.Text = "Yes"
  1145. Else
  1146. objMondayTableCell.Text = "No"
  1147. End If
  1148.  
  1149. If objTuesdayTableCell.Text = True Then
  1150. objTuesdayTableCell.Text = "Yes"
  1151. Else
  1152. objTuesdayTableCell.Text = "No"
  1153. End If
  1154.  
  1155. If objWednesdayTableCell.Text = True Then
  1156. objWednesdayTableCell.Text = "Yes"
  1157. Else
  1158. objWednesdayTableCell.Text = "No"
  1159. End If
  1160.  
  1161. If objThursdayTableCell.Text = True Then
  1162. objThursdayTableCell.Text = "Yes"
  1163. Else
  1164. objThursdayTableCell.Text = "No"
  1165. End If
  1166.  
  1167. If objFridayTableCell.Text = True Then
  1168. objFridayTableCell.Text = "Yes"
  1169. Else
  1170. objFridayTableCell.Text = "No"
  1171. End If
  1172.  
  1173. If objSaturdayTableCell.Text = True Then
  1174. objSaturdayTableCell.Text = "Yes"
  1175. Else
  1176. objSaturdayTableCell.Text = "No"
  1177. End If
  1178.  
  1179. If objSundayTableCell.Text = True Then
  1180. objSundayTableCell.Text = "Yes"
  1181. Else
  1182. objSundayTableCell.Text = "No"
  1183. End If
  1184.  
  1185. objClassNameTableCell.Text = reader.Item("ClassName")
  1186. objGradeTableCell.Text = reader.Item("Grade")
  1187. objTeacherNameTableCell.Text = reader.Item("TeacherName")
  1188.  
  1189. Dim objTableRow As New TableRow
  1190.  
  1191. objTableRow.Controls.Add(objStartTimeTableCell)
  1192. objTableRow.Controls.Add(objEndTimeTableCell)
  1193.  
  1194. objTableRow.Controls.Add(objMondayTableCell)
  1195. objTableRow.Controls.Add(objTuesdayTableCell)
  1196. objTableRow.Controls.Add(objWednesdayTableCell)
  1197. objTableRow.Controls.Add(objThursdayTableCell)
  1198. objTableRow.Controls.Add(objFridayTableCell)
  1199. objTableRow.Controls.Add(objSaturdayTableCell)
  1200. objTableRow.Controls.Add(objSundayTableCell)
  1201.  
  1202. objTableRow.Controls.Add(objClassNameTableCell)
  1203. objTableRow.Controls.Add(objGradeTableCell)
  1204. objTableRow.Controls.Add(objTeacherNameTableCell)
  1205.  
  1206. TableTeacherSchedules.Controls.Add(objTableRow)
  1207. End While
  1208. End Using
  1209.  
  1210. 'GridViewSummary.Visible = False
  1211.  
  1212. ' Get the rendered HTML.
  1213. '-----------------------
  1214. Dim SB As New StringBuilder()
  1215. Dim SW As New StringWriter(SB)
  1216. Dim htmlTW As New HtmlTextWriter(SW)
  1217.  
  1218. LabelEmailMessage.Text = Nothing
  1219.  
  1220. ' Remove the select button for a short while.
  1221. '--------------------------------------------
  1222. With GridViewSummary
  1223. .AllowPaging = False
  1224. .Columns(12).Visible = False
  1225. .DataSource = theTableAdapter.GetDataByAll(TextBoxSearch.Text)
  1226. .DataBind()
  1227. End With
  1228.  
  1229. ' Convert the GridView into HTML.
  1230. '--------------------------------
  1231. ' GridViewSummary.RenderControl(htmlTW)
  1232. TableTeacherSchedules.RenderControl(htmlTW)
  1233.  
  1234. ' Get the HTML into a string.
  1235. ' This will be used in the body of the email report.
  1236. '---------------------------------------------------
  1237. Dim dataGridHTML As String = SB.ToString()
  1238. Dim SmtpServer As New SmtpClient()
  1239.  
  1240. ObjMailMessage = New MailMessage()
  1241.  
  1242. Try
  1243. ObjMailMessage.To.Add(New MailAddress(TextBoxEmailRecipient.Text))
  1244. ObjMailMessage.Subject = "Knowledge Academy Teacher Schedules"
  1245. 'ObjMailMessage.Body = dataGridHTML
  1246. ObjMailMessage.Body = strTableTeacherSchedules & "</br>" & dataGridHTML
  1247.  
  1248. ObjMailMessage.IsBodyHtml = True
  1249. ObjMailMessage.DeliveryNotificationOptions = DeliveryNotificationOptions.OnFailure
  1250.  
  1251. SmtpServer.Send(ObjMailMessage)
  1252.  
  1253. LabelEmailMessage.Text = "<i>Email sent to " & TextBoxEmailRecipient.Text & "!</i>"
  1254.  
  1255. Catch ex As Exception
  1256. LabelEmailMessage.Text = "<i>OOOOOOOOOOOOPS !!! Please check that you have an internet connection and the email address is correct.</i>"
  1257.  
  1258. Finally
  1259.  
  1260. ' Refresh the GridView with select button back in place.
  1261. '-------------------------------------------------------
  1262. With GridViewSummary
  1263. .AllowPaging = True
  1264. .Columns(12).Visible = True
  1265. .DataBind()
  1266. End With
  1267.  
  1268. 'TableTeacherSchedules.Visible = False
  1269. TableTeacherSchedules.Rows.Clear()
  1270. End Try
  1271. End Sub
  1272.  
  1273. Function getColumnIDByHeaderName(ByVal columnName As String) As Integer
  1274.  
  1275. For Each column As DataControlField In GridViewSummary.Columns
  1276. If column.HeaderText = columnName Then
  1277. Dim columnID As Integer = GridViewSummary.Columns.IndexOf(column)
  1278.  
  1279. Return columnID
  1280. End If
  1281. Next
  1282.  
  1283. End Function
  1284.  
  1285. Protected Sub GridViewSummary_PageIndexChanging(sender As Object, e As GridViewPageEventArgs) Handles GridViewSummary.PageIndexChanging
  1286.  
  1287. GridViewSummary.PageIndex = e.NewPageIndex
  1288. GridViewSummary.DataSource = theTableAdapter.GetDataByAll(TextBoxSearch.Text)
  1289. GridViewSummary.DataBind()
  1290. End Sub
  1291.  
  1292. Protected Sub ButtonSearch_Click(sender As Object, e As EventArgs)
  1293.  
  1294. ' Show the schedules the user wants.
  1295. '-----------------------------------
  1296. GridViewSummary.DataSource = theTableAdapter.GetDataByAll(TextBoxSearch.Text)
  1297. GridViewSummary.DataBind()
  1298. End Sub
  1299.  
  1300. Protected Sub ButtonSearchAll_Click(sender As Object, e As EventArgs)
  1301.  
  1302. ' Show all of the schedules.
  1303. '---------------------------
  1304. TextBoxSearch.Text = ""
  1305. GridViewSummary.DataSource = theTableAdapter.GetDataByAll(TextBoxSearch.Text)
  1306. GridViewSummary.DataBind()
  1307. End Sub
  1308.  
  1309. Public Function getChecked(objCurrentCheckedValue As Object) As String
  1310.  
  1311. If Convert.ToBoolean(objCurrentCheckedValue) = True Then
  1312. Return "../../Images/checked.png"
  1313. Else
  1314. Return "../../Images/unchecked.png"
  1315. End If
  1316. End Function
  1317.  
  1318. Protected Sub ImageButtonEditDayOfWeekMonday_Click(sender As Object, e As ImageClickEventArgs)
  1319.  
  1320. Dim imgTheImageButton As New ImageButton
  1321.  
  1322. imgTheImageButton = DetailsView.FindControl("ImageButtonEditDayOfWeekMonday")
  1323.  
  1324. If imgTheImageButton.ImageUrl = "../../Images/checked.png" = True Then
  1325.  
  1326. imgTheImageButton.ImageUrl = "../../Images/unchecked.png"
  1327. LabelCheckBoxMonday.Text = False
  1328. Else
  1329.  
  1330. imgTheImageButton.ImageUrl = "../../Images/checked.png"
  1331.  
  1332. LabelCheckBoxMonday.Text = True
  1333. End If
  1334. End Sub
  1335.  
  1336. Protected Sub ImageButtonEditDayOfWeekTuesday_Click(sender As Object, e As ImageClickEventArgs)
  1337.  
  1338. Dim imgTheImageButton As New ImageButton
  1339.  
  1340. imgTheImageButton = DetailsView.FindControl("ImageButtonEditDayOfWeekTuesday")
  1341.  
  1342. If imgTheImageButton.ImageUrl = "../../Images/checked.png" = True Then
  1343.  
  1344. imgTheImageButton.ImageUrl = "../../Images/unchecked.png"
  1345. LabelCheckBoxTuesday.Text = False
  1346. Else
  1347.  
  1348. imgTheImageButton.ImageUrl = "../../Images/checked.png"
  1349. LabelCheckBoxTuesday.Text = True
  1350. End If
  1351. End Sub
  1352.  
  1353. Protected Sub ImageButtonEditDayOfWeekWednesday_Click(sender As Object, e As ImageClickEventArgs)
  1354.  
  1355. Dim imgTheImageButton As New ImageButton
  1356.  
  1357. imgTheImageButton = DetailsView.FindControl("ImageButtonEditDayOfWeekWednesday")
  1358.  
  1359. If imgTheImageButton.ImageUrl = "../../Images/checked.png" = True Then
  1360.  
  1361. imgTheImageButton.ImageUrl = "../../Images/unchecked.png"
  1362. LabelCheckBoxWednesday.Text = False
  1363. Else
  1364.  
  1365. imgTheImageButton.ImageUrl = "../../Images/checked.png"
  1366. LabelCheckBoxWednesday.Text = True
  1367. End If
  1368. End Sub
  1369.  
  1370. Protected Sub ImageButtonEditDayOfWeekThursday_Click(sender As Object, e As ImageClickEventArgs)
  1371.  
  1372. Dim imgTheImageButton As New ImageButton
  1373.  
  1374. imgTheImageButton = DetailsView.FindControl("ImageButtonEditDayOfWeekThursday")
  1375.  
  1376. If imgTheImageButton.ImageUrl = "../../Images/checked.png" = True Then
  1377.  
  1378. imgTheImageButton.ImageUrl = "../../Images/unchecked.png"
  1379. LabelCheckBoxThursday.Text = False
  1380. Else
  1381.  
  1382. imgTheImageButton.ImageUrl = "../../Images/checked.png"
  1383. LabelCheckBoxThursday.Text = True
  1384. End If
  1385. End Sub
  1386.  
  1387. Protected Sub ImageButtonEditDayOfWeekFriday_Click(sender As Object, e As ImageClickEventArgs)
  1388.  
  1389. Dim imgTheImageButton As New ImageButton
  1390.  
  1391. imgTheImageButton = DetailsView.FindControl("ImageButtonEditDayOfWeekFriday")
  1392.  
  1393. If imgTheImageButton.ImageUrl = "../../Images/checked.png" = True Then
  1394.  
  1395. imgTheImageButton.ImageUrl = "../../Images/unchecked.png"
  1396. LabelCheckBoxFriday.Text = False
  1397. Else
  1398.  
  1399. imgTheImageButton.ImageUrl = "../../Images/checked.png"
  1400. LabelCheckBoxFriday.Text = True
  1401. End If
  1402. End Sub
  1403.  
  1404. Protected Sub ImageButtonEditDayOfWeekSaturday_Click(sender As Object, e As ImageClickEventArgs)
  1405.  
  1406. Dim imgTheImageButton As New ImageButton
  1407.  
  1408. imgTheImageButton = DetailsView.FindControl("ImageButtonEditDayOfWeekSaturday")
  1409.  
  1410. If imgTheImageButton.ImageUrl = "../../Images/checked.png" = True Then
  1411.  
  1412. imgTheImageButton.ImageUrl = "../../Images/unchecked.png"
  1413. LabelCheckBoxSaturday.Text = False
  1414. Else
  1415.  
  1416. imgTheImageButton.ImageUrl = "../../Images/checked.png"
  1417. LabelCheckBoxSaturday.Text = True
  1418. End If
  1419. End Sub
  1420.  
  1421. Protected Sub ImageButtonEditDayOfWeekSunday_Click(sender As Object, e As ImageClickEventArgs)
  1422.  
  1423. Dim imgTheImageButton As New ImageButton
  1424.  
  1425. imgTheImageButton = DetailsView.FindControl("ImageButtonEditDayOfWeekSunday")
  1426.  
  1427. If imgTheImageButton.ImageUrl = "../../Images/checked.png" = True Then
  1428.  
  1429. imgTheImageButton.ImageUrl = "../../Images/unchecked.png"
  1430. LabelCheckBoxSunday.Text = False
  1431. Else
  1432.  
  1433. imgTheImageButton.ImageUrl = "../../Images/checked.png"
  1434. LabelCheckBoxSunday.Text = True
  1435. End If
  1436. End Sub
  1437.  
  1438. Protected Sub ImageButtonInsertDayOfWeekMonday_Click(sender As Object, e As ImageClickEventArgs)
  1439.  
  1440. Dim imgTheImageButton As New ImageButton
  1441.  
  1442. imgTheImageButton = DetailsView.FindControl("ImageButtonInsertDayOfWeekMonday")
  1443.  
  1444. If imgTheImageButton.ImageUrl = "../../Images/checked.png" = True Then
  1445.  
  1446. imgTheImageButton.ImageUrl = "../../Images/unchecked.png"
  1447. ' LabelCheckBoxMonday.Text = False
  1448. SqlDataSourceDetails.InsertParameters("DayOfWeekMonday").DefaultValue = False
  1449. Else
  1450.  
  1451. imgTheImageButton.ImageUrl = "../../Images/checked.png"
  1452. ' LabelCheckBoxMonday.Text = True
  1453. ' blnDayOfWeekMonday = True
  1454. SqlDataSourceDetails.InsertParameters("DayOfWeekMonday").DefaultValue = True
  1455. End If
  1456. End Sub
  1457.  
  1458. Protected Sub ImageButtonInsertDayOfWeekTuesday_Click(sender As Object, e As ImageClickEventArgs)
  1459.  
  1460. Dim imgTheImageButton As New ImageButton
  1461.  
  1462. imgTheImageButton = DetailsView.FindControl("ImageButtonInsertDayOfWeekTuesday")
  1463.  
  1464. If imgTheImageButton.ImageUrl = "../../Images/checked.png" = True Then
  1465.  
  1466. imgTheImageButton.ImageUrl = "../../Images/unchecked.png"
  1467. LabelCheckBoxTuesday.Text = False
  1468. Else
  1469.  
  1470. imgTheImageButton.ImageUrl = "../../Images/checked.png"
  1471. LabelCheckBoxTuesday.Text = True
  1472. End If
  1473. End Sub
  1474.  
  1475. Protected Sub ImageButtonInsertDayOfWeekWednesday_Click(sender As Object, e As ImageClickEventArgs)
  1476.  
  1477. Dim imgTheImageButton As New ImageButton
  1478.  
  1479. imgTheImageButton = DetailsView.FindControl("ImageButtonInsertDayOfWeekWednesday")
  1480.  
  1481. If imgTheImageButton.ImageUrl = "../../Images/checked.png" = True Then
  1482.  
  1483. imgTheImageButton.ImageUrl = "../../Images/unchecked.png"
  1484. LabelCheckBoxWednesday.Text = False
  1485. Else
  1486.  
  1487. imgTheImageButton.ImageUrl = "../../Images/checked.png"
  1488. LabelCheckBoxWednesday.Text = True
  1489. End If
  1490. End Sub
  1491.  
  1492. Protected Sub ImageButtonInsertDayOfWeekThursday_Click(sender As Object, e As ImageClickEventArgs)
  1493.  
  1494. Dim imgTheImageButton As New ImageButton
  1495.  
  1496. imgTheImageButton = DetailsView.FindControl("ImageButtonInsertDayOfWeekThursday")
  1497.  
  1498. If imgTheImageButton.ImageUrl = "../../Images/checked.png" = True Then
  1499.  
  1500. imgTheImageButton.ImageUrl = "../../Images/unchecked.png"
  1501. LabelCheckBoxThursday.Text = False
  1502. Else
  1503.  
  1504. imgTheImageButton.ImageUrl = "../../Images/checked.png"
  1505. LabelCheckBoxThursday.Text = True
  1506. End If
  1507. End Sub
  1508.  
  1509. Protected Sub ImageButtonInsertDayOfWeekFriday_Click(sender As Object, e As ImageClickEventArgs)
  1510.  
  1511. Dim imgTheImageButton As New ImageButton
  1512.  
  1513. imgTheImageButton = DetailsView.FindControl("ImageButtonInsertDayOfWeekFriday")
  1514.  
  1515. If imgTheImageButton.ImageUrl = "../../Images/checked.png" = True Then
  1516.  
  1517. imgTheImageButton.ImageUrl = "../../Images/unchecked.png"
  1518. LabelCheckBoxFriday.Text = False
  1519. Else
  1520.  
  1521. imgTheImageButton.ImageUrl = "../../Images/checked.png"
  1522. LabelCheckBoxFriday.Text = True
  1523. End If
  1524. End Sub
  1525.  
  1526. Protected Sub ImageButtonInsertDayOfWeekSaturday_Click(sender As Object, e As ImageClickEventArgs)
  1527.  
  1528. Dim imgTheImageButton As New ImageButton
  1529.  
  1530. imgTheImageButton = DetailsView.FindControl("ImageButtonInsertDayOfWeekSaturday")
  1531.  
  1532. If imgTheImageButton.ImageUrl = "../../Images/checked.png" = True Then
  1533.  
  1534. imgTheImageButton.ImageUrl = "../../Images/unchecked.png"
  1535. LabelCheckBoxSaturday.Text = False
  1536. Else
  1537.  
  1538. imgTheImageButton.ImageUrl = "../../Images/checked.png"
  1539. LabelCheckBoxSaturday.Text = True
  1540. End If
  1541. End Sub
  1542.  
  1543. Protected Sub ImageButtonInsertDayOfWeekSunday_Click(sender As Object, e As ImageClickEventArgs)
  1544.  
  1545. Dim imgTheImageButton As New ImageButton
  1546.  
  1547. imgTheImageButton = DetailsView.FindControl("ImageButtonInsertDayOfWeekSunday")
  1548.  
  1549. If imgTheImageButton.ImageUrl = "../../Images/checked.png" = True Then
  1550.  
  1551. imgTheImageButton.ImageUrl = "../../Images/unchecked.png"
  1552. LabelCheckBoxSunday.Text = False
  1553. Else
  1554.  
  1555. imgTheImageButton.ImageUrl = "../../Images/checked.png"
  1556. LabelCheckBoxSunday.Text = True
  1557. End If
  1558. End Sub
  1559.  
  1560. Protected Sub ButtonEdit_Click(sender As Object, e As EventArgs)
  1561.  
  1562. ' Update the labels to get an initial value because this value will be used to
  1563. ' determine if or not a tick image is shown when the user clicks the image buttons.
  1564. '----------------------------------------------------------------------------------
  1565. Dim imgTheImageButton As New ImageButton
  1566.  
  1567. imgTheImageButton = DetailsView.FindControl("ImageButtonItemDayOfWeekMonday")
  1568.  
  1569. If imgTheImageButton.ImageUrl = "../../Images/checked.png" Then
  1570. LabelCheckBoxMonday.Text = True
  1571. Else
  1572. LabelCheckBoxMonday.Text = False
  1573. End If
  1574.  
  1575. imgTheImageButton = DetailsView.FindControl("ImageButtonItemDayOfWeekTuesday")
  1576.  
  1577. If imgTheImageButton.ImageUrl = "../../Images/checked.png" Then
  1578. LabelCheckBoxTuesday.Text = True
  1579. Else
  1580. LabelCheckBoxTuesday.Text = False
  1581. End If
  1582.  
  1583. imgTheImageButton = DetailsView.FindControl("ImageButtonItemDayOfWeekWednesday")
  1584.  
  1585. If imgTheImageButton.ImageUrl = "../../Images/checked.png" Then
  1586. LabelCheckBoxWednesday.Text = True
  1587. Else
  1588. LabelCheckBoxWednesday.Text = False
  1589. End If
  1590.  
  1591. imgTheImageButton = DetailsView.FindControl("ImageButtonItemDayOfWeekThursday")
  1592.  
  1593. If imgTheImageButton.ImageUrl = "../../Images/checked.png" Then
  1594. LabelCheckBoxThursday.Text = True
  1595. Else
  1596. LabelCheckBoxThursday.Text = False
  1597. End If
  1598.  
  1599. imgTheImageButton = DetailsView.FindControl("ImageButtonItemDayOfWeekFriday")
  1600.  
  1601. If imgTheImageButton.ImageUrl = "../../Images/checked.png" Then
  1602. LabelCheckBoxFriday.Text = True
  1603. Else
  1604. LabelCheckBoxFriday.Text = False
  1605. End If
  1606.  
  1607. imgTheImageButton = DetailsView.FindControl("ImageButtonItemDayOfWeekSaturday")
  1608.  
  1609. If imgTheImageButton.ImageUrl = "../../Images/checked.png" Then
  1610. LabelCheckBoxSaturday.Text = True
  1611. Else
  1612. LabelCheckBoxSaturday.Text = False
  1613. End If
  1614.  
  1615. imgTheImageButton = DetailsView.FindControl("ImageButtonItemDayOfWeekSunday")
  1616.  
  1617. If imgTheImageButton.ImageUrl = "../../Images/checked.png" Then
  1618. LabelCheckBoxSunday.Text = True
  1619. Else
  1620. LabelCheckBoxSunday.Text = False
  1621. End If
  1622. End Sub
  1623.  
  1624. Protected Sub ButtonInsert_Click(sender As Object, e As EventArgs)
  1625.  
  1626. LabelCheckBoxMonday.Text = False
  1627. LabelCheckBoxTuesday.Text = False
  1628. LabelCheckBoxWednesday.Text = False
  1629. LabelCheckBoxThursday.Text = False
  1630. LabelCheckBoxFriday.Text = False
  1631. LabelCheckBoxSaturday.Text = False
  1632. LabelCheckBoxSunday.Text = False
  1633. End Sub
  1634. End Class
');