Compare commits
	
		
			4 Commits 
		
	
	
		
			master
			...
			Bug37-Dmyt
		
	
	| Author | SHA1 | Date | 
|---|---|---|
|  | 6acac2dbc7 | |
|  | 18a41dd1bb | |
|  | 036489041f | |
|  | 207d12a4a3 | 
							
								
								
									
										20
									
								
								Admin.php
								
								
								
								
							
							
						
						
									
										20
									
								
								Admin.php
								
								
								
								
							|  | @ -51,11 +51,11 @@ if ($_SESSION['user_type'] != "Lecturer") { | |||
|         </li> | ||||
| 
 | ||||
|         <li class="nav-item"> | ||||
|           <a class="nav-link" data-toggle="tab" href="#menu2" id="batch_tab">Batch Create New Student Accounts</a> | ||||
|           <a class="nav-link" data-toggle="tab" href="#menu2">Batch Create New Student Accounts</a> | ||||
|         </li> | ||||
| 
 | ||||
|         <li class="nav-item"> | ||||
|           <a class="nav-link" data-toggle="tab" href="#menu1" id="existing_accounts_tab">Existing Accounts</a> | ||||
|           <a class="nav-link" data-toggle="tab" href="#menu1">Existing Accounts</a> | ||||
|         </li> | ||||
| 
 | ||||
|       </ul> | ||||
|  | @ -66,7 +66,7 @@ if ($_SESSION['user_type'] != "Lecturer") { | |||
|         <div id="home" class="container tab-pane active"><br> | ||||
| 
 | ||||
|           <b>Create Lecturer/TA Accounts </b> | ||||
|           <form method="post" action="Script.php" id="create_account_form"> | ||||
|           <form method="post" action="Script.php"> | ||||
|             <input type="hidden" name="frm_createlecturrer" value="true" required="" /> | ||||
|             Full_Name | ||||
|             <input type="text" name="fullname" placeholder="Full Name" class="form-control" required=""> | ||||
|  | @ -76,9 +76,9 @@ if ($_SESSION['user_type'] != "Lecturer") { | |||
|             Passport_Number / ID (Used as Intial Password) | ||||
|             <input type="text" class="form-control" name="passport" placeholder="Passport No./ID" required=""> | ||||
|             <br> User Type : | ||||
|             <input type="radio" name="type" value="Lecturer" required="" id="role_lecturer"> Lecturer | ||||
|             <input type="radio" name="type" value="TA" required="" id="role_TA"> T/A | ||||
|             <input type="submit" class="btn btn-primary" value="Create" id="create_btn"><br> | ||||
|             <input type="radio" name="type" value="Lecturer" required=""> Lecturer | ||||
|             <input type="radio" name="type" value="TA" required=""> T/A | ||||
|             <input type="submit" class="btn btn-primary" value="Create"><br> | ||||
|             <?php | ||||
| 
 | ||||
|             error_reporting(E_ALL); | ||||
|  | @ -121,10 +121,10 @@ if ($_SESSION['user_type'] != "Lecturer") { | |||
|               $btn = "<button class='btn-primary' onclick=\"updatePass(" . $row['User_ID'] . ",'$pass')\">Reset</button>"; | ||||
|               if ($row['Status'] == "Active") { | ||||
|                 $newstatus = "Blocked"; | ||||
|                 $btnBlock = "<button class='btn-danger' onclick=\"blockUser(" . $row['User_ID'] . ",'$newstatus')\" id=\"block_account_1\">Block</button>"; | ||||
|                 $btnBlock = "<button class='btn-danger' onclick=\"blockUser(" . $row['User_ID'] . ",'$newstatus')\">Block</button>"; | ||||
|               } else { | ||||
|                 $newstatus = "Active"; | ||||
|                 $btnBlock = "<button class='btn-success' onclick=\"blockUser(" . $row['User_ID'] . ",'$newstatus')\" id=\"activate_account_1\">Activate</button>"; | ||||
|                 $btnBlock = "<button class='btn-success' onclick=\"blockUser(" . $row['User_ID'] . ",'$newstatus')\">Activate</button>"; | ||||
|               } | ||||
| 
 | ||||
|               echo "<tr><td>" . $row['User_ID'] . "</td><td>" . $row['Full_Name'] . "</td><td>" . $row['Email'] . "</td> <td>" . $row['Passport_Number'] . "</td><td>$btn</td><td>$btnBlock</td></tr>"; | ||||
|  | @ -138,11 +138,11 @@ if ($_SESSION['user_type'] != "Lecturer") { | |||
| 
 | ||||
|         <div id="menu2" class="container tab-pane fade" style="margin-top:10px"> | ||||
|           <b>Separate two student numbers with a space.</b><br> | ||||
|           <form action="batch_insert.php" method="post" id="batch_form"> | ||||
|           <form action="batch_insert.php" method="post"> | ||||
|             <p> | ||||
|               <textarea cols="80" rows="16" name="users" required=""></textarea> | ||||
|             </p> | ||||
|             <input type="submit" class="btn btn-primary" value="Register Students" id="register_btn"><br> | ||||
|             <input type="submit" class="btn btn-primary" value="Register Students"><br> | ||||
|           </form> | ||||
|         </div> | ||||
| 
 | ||||
|  |  | |||
							
								
								
									
										1103
									
								
								Courses.php
								
								
								
								
							
							
						
						
									
										1103
									
								
								Courses.php
								
								
								
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							
							
								
								
									
										11
									
								
								Footer.php
								
								
								
								
							
							
						
						
									
										11
									
								
								Footer.php
								
								
								
								
							|  | @ -1,4 +1,9 @@ | |||
| <br><br><br><br><br><br><br><br><br> | ||||
| <div style="background-color:white;width:100%di"> | ||||
|   | ||||
| </div> | ||||
|  <footer class="footer bg-primary"> | ||||
|       <div class="container text-light">  | ||||
|         <p >LRR was originally developed as a <a href="http://lanlab.org/course/2018f/se/homepage.html" style="color:white;">Software engineering course project</a> by Mohamed Nor and Elmahdi Houzi.  Please submit your suggestions or bug reports to  lanhui _at_ zjnu.edu.cn.  Last updated on 18/04/2020 by Ashly. <a href="./homepage" style="color:white;">More information ...</a></p>  | ||||
|       <small>© 2018 Copyright: <a href="http://lanlab.org/">lanlab.org</a></small> | ||||
|       </div> | ||||
|     </footer> | ||||
|    | ||||
|   | ||||
|  |  | |||
							
								
								
									
										219
									
								
								Header.php
								
								
								
								
							
							
						
						
									
										219
									
								
								Header.php
								
								
								
								
							|  | @ -19,137 +19,37 @@ if (mysqli_connect_errno()) { | |||
| 
 | ||||
| <head> | ||||
|   | ||||
|   <link href="./css/bootstrap.min.css" rel="stylesheet" type="text/css" /> | ||||
|   <link href="./font-awesome/css/font-awesome.min.css" rel="stylesheet" type="text/css" /> | ||||
|   <link href="./css/bootstrap.min.css" rel="stylesheet" type="text/css" /> | ||||
|   <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"/> | ||||
|   <link href="./font-awesome/css/font-awesome.min.css" rel="stylesheet" type="text/css" /><!-- Font-awesome CSS --> | ||||
|   <link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.1.3/css/bootstrap.min.css" integrity="sha384-MCw98/SFnGE8fJT3GXwEOngsV7Zt27NXFoaoApmYm81iuXoPkFOJwJ8ERdknLPMO" crossorigin="anonymous"><!-- Bootstrap CSS --> | ||||
| 
 | ||||
|   <link href="./css/Styles.css" rel="stylesheet" type="text/css" /> | ||||
| 
 | ||||
|   <script src="./css/jquery.min.js" type="text/javascript"></script> | ||||
|   <script src="./css/bootsrap.min.js" type="text/javascript"></script> | ||||
|   <script src="https://code.jquery.com/jquery-3.3.1.slim.min.js" integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo" crossorigin="anonymous"></script> | ||||
|     <script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.3/umd/popper.min.js" integrity="sha384-ZMP7rVo3mIykV+2+9J3UJ46jBk0WLaUAdn689aCwoqbBJiSnjAK/l8WvCWPIPm49" crossorigin="anonymous"></script> | ||||
|     <script src="https://stackpath.bootstrapcdn.com/bootstrap/4.1.3/js/bootstrap.min.js" integrity="sha384-ChfqqxuZUCnJSK3+MXmPNIyE6ZbWh2IMqE241rYiqJxyMiZ6OW/JmZQ5stwEULTy" crossorigin="anonymous"></script> | ||||
|    | ||||
|   <script src="./css/jquery.datetimepicker.min.js" type="text/javascript"></script> | ||||
|   <script src="./js/CustomDropdown.js" type="text/javascript"></script> | ||||
|   | ||||
| </head> | ||||
|     <style> | ||||
|       .bd-placeholder-img { | ||||
|         font-size: 1.125rem; | ||||
|         text-anchor: middle; | ||||
|         -webkit-user-select: none; | ||||
|         -moz-user-select: none; | ||||
|         user-select: none; | ||||
|       } | ||||
| 
 | ||||
| <body> | ||||
| 
 | ||||
|   <nav class="navbar navbar-expand-lg navbar-dark bg-dark" style="padding-left:150px;padding-right:150px;margin:auto;"> | ||||
|     <a class="navbar-brand" href="~\..\index.php"> <img src="logo.png" style="width:30px;height:30px;"> LRR </a> | ||||
|     <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarColor02" aria-controls="navbarColor02" aria-expanded="false" aria-label="Toggle navigation"> | ||||
|       <span class="navbar-toggler-icon"></span> | ||||
|     </button> | ||||
| 
 | ||||
|     <div class="collapse navbar-collapse" id="navbarColor02"> | ||||
|       <ul class="navbar-nav mr-auto"> | ||||
|         <li class="nav-item active"> | ||||
| 
 | ||||
|         <li class="nav-item active"> | ||||
|           <!-- <a class='nav-link' href='~\..\Visitors.php'>     <i class='fa fa-globe'></i>  Visitor Portal <span class='sr-only'>(current)</span></a> --> | ||||
|         </li> | ||||
|         <?php | ||||
|         if (isset($_SESSION["user_fullname"])) { | ||||
| 
 | ||||
|           echo "       <a class='nav-link' href='~\..\Courses.php'><i class='fa fa-book'></i> Courses <span class='sr-only'>(current)</span></a>"; | ||||
|         ?>
 | ||||
|           </li> | ||||
|       </ul> | ||||
|       <form class="form-inline my-2 my-lg-0" style="color:#fff;"> | ||||
|         Welcome   <b> <?php echo $_SESSION['user_fullname']; ?> </b>  
 | ||||
| 
 | ||||
|         <?php | ||||
|           $c_date =  date("Y-m-d H:i"); | ||||
|           if (isset($_SESSION['user_student_id'])) | ||||
|             echo "(" . $_SESSION['user_type'] . " - " . $_SESSION['user_student_id'] . ")   "; | ||||
|           else | ||||
|             echo "(" . $_SESSION['user_type'] . ")   "; | ||||
|         ?>
 | ||||
| 
 | ||||
|         <?php | ||||
|           if ($_SESSION['user_type'] == "Lecturer") { | ||||
|             echo  "     <i class=\"fa fa-cog\" style=\"color:#fff;\"> </i>  <a style='color:#fff !important' href=\"~\..\Admin.php\" id=\"admin_tab\">Admin </a>"; | ||||
|           } | ||||
|         ?>
 | ||||
| 
 | ||||
|             <i class="fa fa-user" style="color:#fff;"> </i> | ||||
|          <a href="#" style='color:#fff !important' onclick="updatePass(<?php echo $_SESSION['user_id']; ?>)">Update password</a> | ||||
|             <i class="fa fa-lock" style="color:#fff;"> </i>  <a style='color:#fff !important' href="~\..\logout.php">Logout </a> | ||||
| 
 | ||||
|       <?php | ||||
|       /*Rule to include a block of CSS properties only if a certain condition is true.*/ | ||||
|       /*https://www.w3schools.com/css/css_rwd_mediaqueries.asp*/ | ||||
|       @media (min-width: 768px) { | ||||
|         .bd-placeholder-img-lg { | ||||
|           font-size: 3.5rem; | ||||
|         } | ||||
|       ?>
 | ||||
|       </form> | ||||
|     </div> | ||||
|   </nav> | ||||
| 
 | ||||
|   <style> | ||||
|     .nav-item { | ||||
|       border-color: #00ff66;
 | ||||
|     } | ||||
| 
 | ||||
|     .nav-tabs { | ||||
|       border-color: #00ff66;
 | ||||
|     } | ||||
| 
 | ||||
|     .btn-default { | ||||
|       border: 2px solid #00ff66;
 | ||||
|       width: 100%; | ||||
|       text-align: left; | ||||
|       margin: 3px auto; | ||||
|       font-weight: bold; | ||||
|       font-size: 13pt; | ||||
|     } | ||||
| 
 | ||||
|     .table-bordered { | ||||
|       padding: 5px !important; | ||||
|     } | ||||
| 
 | ||||
|     .alert { | ||||
|       font-weight: bold; | ||||
|     } | ||||
| 
 | ||||
|     h1, | ||||
|     h2, | ||||
|     h3, | ||||
|     h4 { | ||||
|       color: #03407B;
 | ||||
|     } | ||||
| 
 | ||||
|     a { | ||||
|       color: #03407B;
 | ||||
|     } | ||||
| 
 | ||||
|     .break-word { | ||||
|       word-wrap: break-word; | ||||
|       white-space: -moz-pre-wrap !important; | ||||
|       /* Mozilla, since 1999 */ | ||||
|       white-space: -pre-wrap; | ||||
|       /* Opera 4-6 */ | ||||
|       white-space: -o-pre-wrap; | ||||
|       /* Opera 7 */ | ||||
|       white-space: pre-wrap; | ||||
|       /* css-3 */ | ||||
|       word-wrap: break-word; | ||||
|       /* Internet Explorer 5.5+ */ | ||||
|       white-space: -webkit-pre-wrap; | ||||
|       /* Newer versions of Chrome/Safari*/ | ||||
|       word-break: break-all; | ||||
|       white-space: normal; | ||||
|     } | ||||
| 
 | ||||
|     .ui-widget-content.ui-dialog { | ||||
|       border: 2px solid #03488B;
 | ||||
| 
 | ||||
|     } | ||||
| 
 | ||||
|     .ui-dialog>.ui-widget-header { | ||||
|       background: #03488B;
 | ||||
|       color: white | ||||
|     } | ||||
| 
 | ||||
|     .ui-button { | ||||
|       background: #03488B;
 | ||||
|       color: white | ||||
|     } | ||||
|   </style> | ||||
| 
 | ||||
|       } | ||||
|     </style> | ||||
|   <script> | ||||
|     function updatePass(id) { | ||||
| 
 | ||||
|  | @ -169,3 +69,72 @@ if (mysqli_connect_errno()) { | |||
|       window.location.href = "\Script.php\?action=statuschange&uid=" + id + "&status=" + status; | ||||
|     } | ||||
|   </script> | ||||
| </head> | ||||
| 
 | ||||
| <body> | ||||
| 
 | ||||
|   | ||||
| <nav class="navbar navbar-expand-md navbar-dark bg-primary sticky-top"> | ||||
|   <div class="container-fluid">  | ||||
|     <a class="navbar-brand" href="~\..\index.php"> <img src="logo.png" width="30" height="30"> LRR </a> | ||||
| 
 | ||||
|         <?php   | ||||
|           if (isset($_SESSION["user_fullname"]))  | ||||
|           {  | ||||
|         ?>
 | ||||
|             <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarResponsive"> | ||||
|             <span class="navbar-toggler-icon"></span> | ||||
|             </button> | ||||
| 
 | ||||
|         <?php | ||||
|           } | ||||
|         ?>
 | ||||
| 
 | ||||
|     <div class="collapse navbar-collapse" id="navbarResponsive"> | ||||
|        | ||||
|         <?php | ||||
|         if (isset($_SESSION["user_fullname"])) { | ||||
|           echo "<ul class=\"navbar-nav mr-auto\">"; | ||||
|           echo "<li class=\"nav-item active\">"; | ||||
|           echo "<a class='nav-link' href='~\..\Courses.php'><i class='fa fa-book'></i> Courses</a>"; | ||||
|           echo "</li></ul>";  | ||||
|         ?>
 | ||||
|          | ||||
|     <ul class="nav navbar-nav navbar-right"> | ||||
|         <li class="nav-item"> | ||||
|           <a class="nav-link text-light" href="#">Welcome <b> <?php echo $_SESSION['user_fullname']; ?> </b>
 | ||||
| 
 | ||||
|           <?php | ||||
|             $c_date =  date("Y-m-d H:i"); | ||||
|             if (isset($_SESSION['user_student_id'])) | ||||
|               echo "(" . $_SESSION['user_type'] . " - " . $_SESSION['user_student_id'] . ")   "; | ||||
|             else | ||||
|               echo "(" . $_SESSION['user_type'] . ")   "; | ||||
|           ?>
 | ||||
|           </a> | ||||
|         </li> | ||||
|         <li class="nav-item dropdown"> | ||||
|           <a class="nav-link dropdown-toggle text-light"  id="navbarDropdown" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> Menu </a> | ||||
|           <div class="dropdown-menu" aria-labelledby="navbarDropdown"> | ||||
|             <a href="#" class="dropdown-item" onclick="updatePass(<?php echo $_SESSION['user_id']; ?>)"><i class="fa fa-user ">Update passwor</i></a> | ||||
|             | ||||
|             <?php | ||||
|                 if ($_SESSION['user_type'] == "Lecturer") { | ||||
|                   echo  "<a class=\"dropdown-item\" href=\"~\..\Admin.php\"><i class=\"fa fa-cog\" >Admin</i> </a>"; | ||||
|                 } | ||||
|               ?>  
 | ||||
|           </div> | ||||
|         </li> | ||||
|         <li class="nav-item"> | ||||
|             <a class="nav-link text-light" href="~\..\logout.php"><i class="fa fa-lock" > Logout</i> </a> | ||||
|         </li> | ||||
|       </ul> | ||||
| 
 | ||||
|       <?php | ||||
|         } | ||||
|       ?>
 | ||||
| 
 | ||||
|     </div> | ||||
| 
 | ||||
|   </div> | ||||
| </nav>  | ||||
|  | @ -0,0 +1,15 @@ | |||
| /* Sticky footer styles | ||||
| -------------------------------------------------- */ | ||||
| html { | ||||
|   position: relative; | ||||
|   min-height: 100%; | ||||
| } | ||||
| body { | ||||
|   margin-bottom: 100px; /* Margin bottom by footer height */ | ||||
| } | ||||
| .footer { | ||||
|   position: absolute; | ||||
|   bottom: 0; | ||||
|   width: 100%; | ||||
|   height: 100px; /* Set the fixed height of the footer here */  | ||||
| } | ||||
							
								
								
									
										161
									
								
								index.php
								
								
								
								
							
							
						
						
									
										161
									
								
								index.php
								
								
								
								
							|  | @ -1,7 +1,7 @@ | |||
| <?php | ||||
|   $page='Home'; | ||||
|   require 'Header.php'; | ||||
|   session_start(); | ||||
| $page='Home'; | ||||
| require 'Header.php'; | ||||
| session_start(); | ||||
| ?>
 | ||||
| 
 | ||||
| <?php | ||||
|  | @ -10,119 +10,78 @@ if (isset($_SESSION["user_fullname"])) { | |||
|     header("Location: Courses.php"); | ||||
| } | ||||
| ?>
 | ||||
| <div class="album py-5 bg-white"> | ||||
|         <div class="container bg-white"> | ||||
| 
 | ||||
| <br><br><br> | ||||
|           <div class="row align-items-center">  | ||||
| 
 | ||||
| <div class="row" style="width:85%;margin:auto;"> | ||||
|   <div class="col-md-4"> | ||||
|     <br><br> | ||||
|     <img src="logo.png" style="width:40%; position:relative; right:-95px; top:1px;"> | ||||
|     <br><br> | ||||
|     <div style="width:20%; position:relative; right:-90px; font-family: Poppins-Regular;"> | ||||
|     <h1>Lab Report Repository</h1> | ||||
|     <br><br> | ||||
|     </div> | ||||
|     </div> | ||||
|     <br> | ||||
|     <div style = "position:relative; left:240px; top:-2px;"> | ||||
|     <h4 class="list-group-item active" style="font-weight:normal;font-family: Poppins-Regular;"> Sign in </h4> | ||||
|     <div class="list-group-item"> | ||||
|             <div class="col-md-6"> | ||||
|               <div class="mb-6 box-shadow"> | ||||
|                  <img class="mx-auto d-block" src="logo.png" />   | ||||
|                 <div class="card-body"> | ||||
|                   <h1 style="font-family: Poppins-Regular;">Lab Report Repository</h1> | ||||
|                 </div> | ||||
|               </div> | ||||
|             </div>  | ||||
| 
 | ||||
|     <div class="panel-body"> | ||||
|             <div class="col-md-6"> | ||||
|               <div class="card mb-6 box-shadow"> | ||||
|                     <div class="card-header bg-primary" >   | ||||
|                         <h4 class="list-group-item active" style="font-weight:normal;font-family: Poppins-Regular;"> Sign in </h4> | ||||
|                     </div>  | ||||
|                  <div class="card-body"> | ||||
|                    <form  method="post" action="Script.php" name="frm_login"> | ||||
|                     <input type="hidden" name="frm_login" value="true"/> | ||||
|                     <p>Student ID / Instructor Email</p> | ||||
|                     <input type="text" name="user" placeholder="Email / Student Number" class="form-control" required="required" /> | ||||
|                     <br> | ||||
|                     <p>Password</p> | ||||
|                     <input type="password" class="form-control"  name="password" placeholder="Password" required="required" /> | ||||
|                     <div class="text-center"> | ||||
|                         <br><input type="submit" class="btn btn-primary my-2 btn-lg btn-block" value="Login"> | ||||
|                     </div> | ||||
|                     <br> <a href="recover_password.php">Reset my password</a> | ||||
|                     <div class="text-center"> | ||||
|                         <br><span >Don't have an account?</span> | ||||
|                         <a href="signup.php" >Sign Up</a>  | ||||
|                     </div>  | ||||
| 
 | ||||
|     <form method="post" action="Script.php" name="frm_login"> | ||||
|     <input type="hidden" name="frm_login" value="true"/> | ||||
|     Student ID / Instructor Email | ||||
|     <input type="text" name="user" placeholder="Email / Student Number" class="form-control" required="required" id="user_name" /> | ||||
|     <br> | ||||
|     Password | ||||
|     <input type="password" class="form-control"  name="password" placeholder="password" required="required" id="user_password" /> | ||||
|     <div class="text-center"> | ||||
|     <br><input type="submit" class="btn-primary" value="Login" id="login_btn"> | ||||
|     </div> | ||||
|     <br> <a href="recover_password.php" style="font-weight:normal;color:#2471A3; font-family: Poppins-Regular;
 | ||||
|     font-size: 17px;">Reset my password</a>
 | ||||
|     <div class="text-center"> | ||||
|     <br><span class="txt1">Don't have an account?</span> | ||||
|          <a class="txt2" href="signup.php" style="font-weight:normal" id="signup_link">Sign Up</a> | ||||
|         </a> | ||||
|     </div> | ||||
|             <?php  | ||||
| 
 | ||||
|     <?php  | ||||
|             error_reporting(E_ALL); | ||||
| 
 | ||||
|     error_reporting(E_ALL); | ||||
|      | ||||
|     if(isset($_SESSION['info_login'])) { | ||||
|         echo  '<hr><div class="alert alert-danger" role="alert">'.$_SESSION['info_login'].'</div>'; | ||||
|         $_SESSION['info_login']=null; | ||||
|     } | ||||
|             if(isset($_SESSION['info_login'])) { | ||||
|                 echo  '<hr><div class="alert alert-danger" role="alert">'.$_SESSION['info_login'].'</div>'; | ||||
|                 $_SESSION['info_login']=null; | ||||
|             } | ||||
| 
 | ||||
| 
 | ||||
|     // wrong pass
 | ||||
|     if(isset($_SESSION['wrong_pass'])) { | ||||
|         echo  '<hr><div class="alert alert-danger" role="alert">'.$_SESSION['wrong_pass'].'</div>'; | ||||
|         $_SESSION['wrong_pass']=null; | ||||
|     } | ||||
|             if(isset($_SESSION['wrong_pass'])) { | ||||
|                 echo  '<hr><div class="alert alert-danger" role="alert">'.$_SESSION['wrong_pass'].'</div>'; | ||||
|                 $_SESSION['wrong_pass']=null; | ||||
|             } | ||||
| 
 | ||||
| 
 | ||||
|     if(isset($_SESSION['infoChangePassword'])) { | ||||
|         echo  '<hr><div class="alert alert-danger" role="alert">'.$_SESSION['infoChangePassword'].'</div>'; | ||||
|         $_SESSION['infoChangePassword']=null; | ||||
|     } | ||||
|     ?>
 | ||||
|             if(isset($_SESSION['infoChangePassword'])) { | ||||
|                 echo  '<hr><div class="alert alert-danger" role="alert">'.$_SESSION['infoChangePassword'].'</div>'; | ||||
|                 $_SESSION['infoChangePassword']=null; | ||||
|             } | ||||
|             ?>
 | ||||
|   | ||||
|     </div> | ||||
|     </form> | ||||
|     </div> | ||||
| </div> | ||||
| </div> | ||||
| </div> | ||||
|                 </form> | ||||
|                 </div> | ||||
|               </div> | ||||
|             </div>  | ||||
|           </div> | ||||
|         </div> | ||||
|       </div> | ||||
| 
 | ||||
| </div> | ||||
| 
 | ||||
| 
 | ||||
| <div id="footer"> | ||||
|     LRR was originally developed as a <a href="http://lanlab.org/course/2018f/se/homepage.html" style="color:white;">software engineering course project</a> by Mohamed Nor and Elmahdi Houzi.  Please submit your suggestions or bug reports to  lanhui _at_ zjnu.edu.cn.  Last updated on 18/04/2020 by Ashly. <a href="./homepage" style="color:white;">More information ...</a> | ||||
|     </div> | ||||
| <?php  | ||||
| require 'Footer.php';  | ||||
| ?>
 | ||||
| 
 | ||||
| </body> | ||||
| 
 | ||||
| <style> | ||||
|     /*------------------------------------------------------------------ | ||||
| [ Login Button ]*/ | ||||
| .btn-primary { | ||||
|             color: white; | ||||
|             border-radius: 5px; | ||||
|             text-shadow: 0 1px 1px rgba(0, 0, 0, 0.2); | ||||
|             background: rgb(75, 184, 240); | ||||
|             padding:5px 100px; | ||||
|             font-family: Poppins-Regular; | ||||
|             font-size: 23px; | ||||
|             line-height: 1.5; | ||||
|         } | ||||
| 
 | ||||
| #footer{
 | ||||
| position:fixed; | ||||
| bottom:0; | ||||
| left:0; | ||||
| background-color:#03417C;
 | ||||
| color:#FFF;
 | ||||
| text-align:center; | ||||
| width:100%; | ||||
| } | ||||
| .txt1 { | ||||
|   font-family: Poppins-Regular; | ||||
|   font-size: 18px; | ||||
|   line-height: 1.5; | ||||
|   color: #666666;
 | ||||
| } | ||||
| .txt2 { | ||||
|   font-family: Poppins-Regular; | ||||
|   font-size: 19px; | ||||
|   line-height: 1.5; | ||||
|   color: #2471A3;
 | ||||
| } | ||||
| 
 | ||||
| </style> | ||||
| 
 | ||||
| </html> | ||||
|  |  | |||
|  | @ -0,0 +1,9 @@ | |||
| $(document).ready(function(e){ | ||||
|     $('.search-panel .dropdown-menu').find('a').click(function(e) { | ||||
| 		e.preventDefault(); | ||||
| 		var param = $(this).attr("href").replace("#",""); | ||||
| 		var concept = $(this).text(); | ||||
| 		$('.search-panel span#search_concept').text(concept); | ||||
| 		$('.input-group #search_param').val(param); | ||||
| 	}); | ||||
| }); | ||||
							
								
								
									
										48
									
								
								signup.php
								
								
								
								
							
							
						
						
									
										48
									
								
								signup.php
								
								
								
								
							|  | @ -6,35 +6,37 @@ include 'NoDirectPhpAcess.php'; | |||
| include 'Header.php'; | ||||
| ?>
 | ||||
| 
 | ||||
| <div class="row"> | ||||
| <div class="album py-5 bg-white"> | ||||
|     <div class="container bg-white"> | ||||
|   | ||||
|     <div class="col-md-4 list-group" style="margin:auto;"> | ||||
|     <div class="col-md-6 panel panel-primary" > | ||||
| 
 | ||||
|         <br> | ||||
| 
 | ||||
|         <h4 class="list-group-item active"> Please fill in each field below </h4> | ||||
|         <div class="list-group-item"> | ||||
| 
 | ||||
|             <div class="panel-body"> | ||||
|             <div class="panel panel-primary"> | ||||
| 
 | ||||
|                 <form method="post" action="Script.php" id="signup_form"> | ||||
|                 <form method="post" action="Script.php"> | ||||
|                     <input type="hidden" name="frm_signup_2" value="true" /> | ||||
|                     Full Name | ||||
|                     <input type="text" name="fullname" placeholder="Your full name" class="form-control" value="<?php echo $_SESSION['user_fullname']; ?>" required="required" id="full_name"/> | ||||
|                     <p>Full Name</p> | ||||
|                     <input type="text" name="fullname" placeholder="Your full name" class="form-control" value="<?php echo $_SESSION['user_fullname']; ?>" required="required" /> | ||||
| 
 | ||||
|                     Student ID | ||||
|                     <input type="text" name="user_student_id" placeholder="Entre your student ID" class="form-control" value="<?php echo $_SESSION['user_student_id']; ?>" required="required" id="student_id"> | ||||
|                     <p>Student ID</p> | ||||
|                     <input type="text" name="user_student_id" placeholder="Entre your student ID" class="form-control" value="<?php echo $_SESSION['user_student_id']; ?>" required="required"> | ||||
| 
 | ||||
|                     Email | ||||
|                     <input type="text" name="email" placeholder="Email" class="form-control" value="<?php echo $_SESSION['user_email']; ?>" required="required" id="email" /> | ||||
|                     <p>Email</p> | ||||
|                     <input type="text" name="email" placeholder="Email" class="form-control" value="<?php echo $_SESSION['user_email']; ?>" required="required" /> | ||||
| 
 | ||||
|                     Password (<i>must include uppercase and lowercase letters, digits and special characters</i>) | ||||
|                     <input type="password" class="form-control" name="password" placeholder="Enter password" required="required" id="password1" /> | ||||
|                     <p>Password (<i>must include uppercase and lowercase letters, digits and special characters</i>)</p> | ||||
|                     <input id="password" type="password" pattern="^(?=.*[A-Za-z])(?=.*\d)(?=.*[@$!%*#?&])[A-Za-z\d@$!%*#?&]{4,}$" title="Password must have at least characters that include lowercase letters, uppercase letters, numbers and sepcial characters (e.g., !?.,*^)." class="form-control" name="password" placeholder="Enter password" required="required"  onchange="if(this.checkValidity()) form.password_two.pattern = this.value;" /> | ||||
| 
 | ||||
|                     Confirm Password | ||||
|                     <input type="password" class="form-control" name="confirmpassword" placeholder="Confirm password" required="required" id="password2" /> | ||||
|                     <p>Confirm Password</p> | ||||
|                     <input id="password_two" type="password" pattern="^(?=.*[A-Za-z])(?=.*\d)(?=.*[@$!%*#?&])[A-Za-z\d@$!%*#?&]{4,}$" title="Password must have at least characters that include lowercase letters, uppercase letters, numbers and sepcial characters" class="form-control" name="confirmpassword" placeholder="Confirm password" required="required" onchange="this.setCustomValidity(this.validity.patternMismatch ? 'Please enter the same Password as above' : '');" /> | ||||
|                     <br> | ||||
|                     <input type="submit" class="btn-primary" value="Sign up" id="signup_btn"> | ||||
| 
 | ||||
|                     <input type="submit" class="btn btn-primary" value="Sign up"> | ||||
|                     <?php | ||||
|                     error_reporting(E_ALL); | ||||
|                     if (isset($_SESSION['info_signup2'])) { | ||||
|  | @ -48,17 +50,5 @@ include 'Header.php'; | |||
|         </div> | ||||
|     </div> | ||||
| </div> | ||||
| <style> | ||||
|     /*------------------------------------------------------------------ | ||||
| [ Login Button ]*/ | ||||
|     .btn-primary { | ||||
|         color: white; | ||||
|         border-radius: 5px; | ||||
|         text-shadow: 0 1px 1px rgba(0, 0, 0, 0.2); | ||||
|         background: rgb(75, 184, 240); | ||||
|         padding: 5px 105px; | ||||
|         font-family: Poppins-Regular; | ||||
|         font-size: 23px; | ||||
|         line-height: 1.5; | ||||
|     } | ||||
| </style> | ||||
| </div> | ||||
| 
 | ||||
|  |  | |||
|  | @ -32,12 +32,12 @@ class Admin(Actor): | |||
| 
 | ||||
| 			#Locate "Admin" tab. | ||||
| 			wait = WebDriverWait(driver, 10) | ||||
| 			admin = wait.until(EC.presence_of_element_located((By.ID, "admin_tab"))) | ||||
| 			admin = wait.until(EC.presence_of_element_located((By.XPATH, "/html/body/nav/div/form/a[1]"))) | ||||
| 			admin.click() | ||||
| 
 | ||||
| 			#Locate "Create Lecturer/TA account" form | ||||
| 			wait2 = WebDriverWait(driver, 10) | ||||
| 			new_account_form = wait2.until(EC.presence_of_element_located((By.ID, "create_account_form"))) | ||||
| 			new_account_form = wait2.until(EC.presence_of_element_located((By.ID, "frm_create_acc"))) | ||||
| 
 | ||||
| 			#Fill in the form fields | ||||
| 			name_field = new_account_form.find_element(By.XPATH, "//input[@name='fullname']") | ||||
|  | @ -53,13 +53,13 @@ class Admin(Actor): | |||
| 
 | ||||
| 			#If "Lecturer" is specified in type parameter, select Lecturer account type, else use default | ||||
| 			if type == "Lecturer": | ||||
| 				type_radio = new_account_form.find_element(By.ID, "role_lecturer") | ||||
| 				type_radio = new_account_form.find_element(By.XPATH, "//input[@value='Lecturer']") | ||||
| 			else: | ||||
| 				type_radio = new_account_form.find_element(By.ID, "role_TA") | ||||
| 				type_radio = new_account_form.find_element(By.XPATH, "//input[@value='TA']") | ||||
| 
 | ||||
| 			type_radio.click() | ||||
| 
 | ||||
| 			submit_btn = new_account_form.find_element(By.ID, "create_btn") | ||||
| 			submit_btn = new_account_form.find_element(By.XPATH, "//input[@type='submit'][@value='Create']") | ||||
| 			submit_btn.click() | ||||
| 
 | ||||
| 			return 0 | ||||
|  | @ -92,23 +92,23 @@ class Admin(Actor): | |||
| 
 | ||||
| 			#Locate the "Admin" tab. | ||||
| 			wait = WebDriverWait(driver, 10) | ||||
| 			admin = wait.until(EC.presence_of_element_located((By.ID, "admin_tab"))) | ||||
| 			admin = wait.until(EC.presence_of_element_located((By.XPATH, "/html/body/nav/div/form/a[1]"))) | ||||
| 			admin.click() | ||||
| 
 | ||||
| 			#Navigate to "Batch create form" | ||||
| 			wait2 = WebDriverWait(driver, 10) | ||||
| 			batch_tab = wait2.until(EC.presence_of_element_located((By.ID, "batch_tab"))) | ||||
| 			batch_tab = wait2.until(EC.presence_of_element_located((By.XPATH, "/html/body/div[2]/div[1]/div/ul/li[2]/a"))) | ||||
| 			batch_tab.click() | ||||
| 
 | ||||
| 			#Fill in the form | ||||
| 			wait3 = WebDriverWait(driver, 10) | ||||
| 			batch_form = wait3.until(EC.presence_of_element_located((By.ID, "batch_form"))) | ||||
| 			batch_form = wait3.until(EC.presence_of_element_located((By.ID, "frm_batch_acc"))) | ||||
| 			 | ||||
| 			text_area = batch_form.find_element(By.XPATH, "//textarea[@name='users']") | ||||
| 			for i in range(len(lst)): | ||||
| 				text_area.send_keys(lst[i]+" ") | ||||
| 
 | ||||
| 			submit_btn = batch_form.find_element(By.ID, "register_btn") | ||||
| 			submit_btn = batch_form.find_element(By.XPATH, "//input[@type='submit'][@value='Create All']") | ||||
| 			submit_btn.click() | ||||
| 
 | ||||
| 		except: | ||||
|  | @ -139,22 +139,22 @@ class Admin(Actor): | |||
| 
 | ||||
| 			#Locate the "Admin" tab. | ||||
| 			wait = WebDriverWait(driver, 10) | ||||
| 			admin = wait.until(EC.presence_of_element_located((By.ID, "admin_tab"))) | ||||
| 			admin = wait.until(EC.presence_of_element_located((By.XPATH, "/html/body/nav/div/form/a[1]"))) | ||||
| 			admin.click() | ||||
| 
 | ||||
| 			#Navigate to "Exisitin Accounts" table | ||||
| 			wait2 = WebDriverWait(driver, 10) | ||||
| 			exist_acc_tab = wait2.until(EC.presence_of_element_located((By.ID, "existing_accounts_tab"))) | ||||
| 			exist_acc_tab = wait2.until(EC.presence_of_element_located((By.XPATH, "/html/body/div[2]/div[1]/div/ul/li[3]/a"))) | ||||
| 			exist_acc_tab.click()		 | ||||
| 			 | ||||
| 			#Alternate between block and activate | ||||
| 			if op == "block": | ||||
| 				#Locate first account and block it on existing account table | ||||
| 				wait3 = WebDriverWait(driver, 10) | ||||
| 				button = driver.find_element(By.ID, "block_account_1") | ||||
| 				button = driver.find_element_by_id("block_acc_1") | ||||
| 			elif op == "activate": | ||||
| 				wait3 = WebDriverWait(driver, 10) | ||||
| 				button = driver.find_element(By.ID, "activate_account_1") | ||||
| 				button = driver.find_element_by_id("activate_acc_1") | ||||
| 			 | ||||
| 			driver.execute_script("arguments[0].click();", button) | ||||
| 
 | ||||
|  |  | |||
|  | @ -60,25 +60,26 @@ class Instructor(Actor): | |||
| 
 | ||||
| 			#wait until the lab submission form shows up | ||||
| 			wait2 = WebDriverWait(driver, 10) | ||||
| 			new_lab_assignment_form = wait2.until(EC.presence_of_element_located((By.ID, "newlab_form"))) | ||||
| 			new_lab_assignment_form = wait2.until(EC.presence_of_element_located((By.XPATH, "//form[@id='nlaf']"))) | ||||
| 			 | ||||
| 			#Fill the required form fields and submit. | ||||
| 			lab_date = new_lab_assignment_form.find_element(By.ID, "date") | ||||
| 			lab_date.send_keys(dateStr) | ||||
| 			lab_title = new_lab_assignment_form.find_element(By.ID, "lab_title") | ||||
| 			lab_date = new_lab_assignment_form.find_element(By.XPATH, "//input[@id='date'][@name='deadlinedate']") | ||||
| 			timeStr = self.utility.getTodayDate() | ||||
| 			lab_date.send_keys(timeStr) | ||||
| 			lab_title = new_lab_assignment_form.find_element(By.XPATH, "//form[@id='nlaf']/input[@id='ltitle']") | ||||
| 			lab_title.send_keys("TESTASSIGNMENT"+str(dateStr)) | ||||
| 			lab_instructions = new_lab_assignment_form.find_element(By.ID, "lab_instructor") | ||||
| 			lab_instructions = new_lab_assignment_form.find_element(By.XPATH, "//form[@id='nlaf']/textarea[@id='linstruct']") | ||||
| 			lab_instructions.send_keys("TESTINSTRUCTIONS"+str(dateStr)) | ||||
| 			lab_marks = new_lab_assignment_form.find_element(By.ID, "lab_mark") | ||||
| 			lab_marks = new_lab_assignment_form.find_element(By.XPATH, "//form[@id='nlaf']/input[@id='lmark']") | ||||
| 			lab_marks.send_keys("4") | ||||
| 
 | ||||
| 			#if group == 0 select individual submission, if group == 1 select group submission | ||||
| 			if group == 0:		 | ||||
| 				submission_type = new_lab_assignment_form.find_element(By.ID, "lab_individual") | ||||
| 				submission_type = new_lab_assignment_form.find_element(By.XPATH, "//form[@id='nlaf']/input[@id='lindi']") | ||||
| 			elif group == 1: | ||||
| 				submission_type = new_lab_assignment_form.find_element(By.ID, "lab_group") | ||||
| 				submission_type = new_lab_assignment_form.find_element(By.XPATH, "//form[@id='nlaf']/input[@id='lgrp']") | ||||
| 			submission_type.click() | ||||
| 			submit = new_lab_assignment_form.find_element(By.ID, "submit_btn") | ||||
| 			submit = new_lab_assignment_form.find_element(By.XPATH, "//form[@id='nlaf']/input[@id='lbtn']") | ||||
| 			submit.click() | ||||
| 			return 0 | ||||
| 		except: | ||||
|  | @ -114,25 +115,25 @@ class Instructor(Actor): | |||
| 			timeStr = self.utility.getTime() | ||||
| 			 | ||||
| 			#Fill the required form fields and submit | ||||
| 			course_name = driver.find_element(By.ID, "course_name") | ||||
| 			course_name = driver.find_element(By.ID, "cname") | ||||
| 			course_name.send_keys("TESTCOURSE"+str(dateStr)+str(timeStr)) | ||||
| 			 | ||||
| 			#This URL is needed to access the same created course via its link in post_lab_report() method. | ||||
| 			global courseURL | ||||
| 			courseURL = "TESTCOURSE"+str(dateStr)+str(timeStr) | ||||
| 			course_code = driver.find_element(By.ID, "course_code") | ||||
| 			course_code = driver.find_element(By.ID, "ccode") | ||||
| 			course_code.send_keys("TC"+str(dateStr)+str(timeStr)) | ||||
| 			self.utility.storeCourseCode("TC"+str(dateStr)+str(timeStr))#Store course code to be used | ||||
| 			academic_year = driver.find_element(By.ID, "academic_year")				#later by student. | ||||
| 			academic_year = driver.find_element(By.ID, "ayear")				#later by student. | ||||
| 			academic_year.send_keys("2021") | ||||
| 			faculty = driver.find_element(By.ID, "faculty") | ||||
| 			faculty = driver.find_element(By.ID, "fac") | ||||
| 			faculty.send_keys("TESTING DEPARTMENT") | ||||
| 
 | ||||
| 			#If joining == 0 does not require join approval, if joining == 1 requires join approval | ||||
| 			if joining == 0 : | ||||
| 				joining_students = driver.find_element(By.ID, "join_no") | ||||
| 				joining_students = driver.find_element(By.ID, "jno") | ||||
| 			elif group == 1: | ||||
| 				joining_students = driver.find_element(By.ID, "join_yes") | ||||
| 				joining_students = driver.find_element(By.ID, "jyes") | ||||
| 			joining_students.click() | ||||
| 			submit = driver.find_element(By.ID, "portal_btn") | ||||
| 			submit.click() | ||||
|  |  | |||
|  | @ -55,10 +55,10 @@ class Student(Actor): | |||
| 
 | ||||
| 			#Wait until the course is found, and join. | ||||
| 			wait2 = WebDriverWait(driver, 10) | ||||
| 			join_btn = wait2.until(EC.element_to_be_clickable((By.ID, "join_btn"))) | ||||
| 			join_btn.click() | ||||
| 			course_card = wait.until(EC.element_to_be_clickable((By.LINK_TEXT, str("Join Course")))) | ||||
| 			course_card.click() | ||||
| 
 | ||||
| 			#If joined course successfully, proceed. | ||||
| 			#If the joined course successfully, proceed. | ||||
| 			wait3 = WebDriverWait(driver, 10).until(EC.presence_of_element_located((By.XPATH, "/html/body/div[1]/div[1]/span"))) | ||||
| 			return 0 | ||||
| 
 | ||||
|  |  | |||
|  | @ -44,7 +44,6 @@ class MyUtility: | |||
| 		""" | ||||
| 		try: | ||||
| 			driver = webdriver.Chrome() | ||||
| 			driver.maximize_window() | ||||
| 			driver.get(self.getPageURL()) | ||||
| 			return driver | ||||
| 		except: | ||||
|  | @ -70,11 +69,11 @@ class MyUtility: | |||
| 		try: | ||||
| 			driver = self.getSession() | ||||
| 			WebDriverWait(driver, 10) | ||||
| 			username = driver.find_element(By.ID, "user_name") | ||||
| 			username = driver.find_element(By.ID, "uname") | ||||
| 			username.send_keys(obj.getStudentID()) | ||||
| 			password = driver.find_element(By.ID, "user_password") | ||||
| 			password = driver.find_element(By.ID, "upass") | ||||
| 			password.send_keys(obj.getPassword()) | ||||
| 			login = driver.find_element(By.ID, "login_btn") | ||||
| 			login = driver.find_element(By.ID, "log_btn") | ||||
| 			login.click() | ||||
| 			return driver | ||||
| 		except: | ||||
|  | @ -105,35 +104,26 @@ class MyUtility: | |||
| 			driver = self.getSession() | ||||
| 			wait = WebDriverWait(driver, 10, ignored_exceptions='StaleElementReferenceException') | ||||
| 
 | ||||
| 			#Click the sign up button, and fill the sign up form | ||||
| 			signup_btn = wait.until(EC.presence_of_element_located((By.ID, "signup_link"))) | ||||
| 			signup_btn.click() | ||||
| 			 | ||||
| 			#Find and fill full student name | ||||
| 			wait2 = WebDriverWait(driver, 10) | ||||
| 			signup_form = wait2.until(EC.presence_of_element_located((By.ID, "signup_form"))) | ||||
| 			name_field = signup_form.find_element(By.ID, "full_name") | ||||
| 			name_field.send_keys(name) | ||||
| 
 | ||||
| 			#Find and fill student ID | ||||
| 			student_id = signup_form.find_element(By.ID, "student_id") | ||||
| 			#Locate the signup form and fill in the student ID | ||||
| 			signup_form = wait.until(EC.presence_of_element_located((By.ID, "signup_frm"))) | ||||
| 			student_id = signup_form.find_element(By.ID, "std_id") | ||||
| 			std_id = self.fetch_new_student_id() | ||||
| 			student_id.send_keys(std_id) | ||||
| 			next_btn = signup_form.find_element(By.ID, "next_btn") | ||||
| 			next_btn.click() | ||||
| 
 | ||||
| 			#Find and fill email | ||||
| 			email_field = signup_form.find_element(By.ID, "email") | ||||
| 			#Fill in student data and sign up. | ||||
| 			wait2 = WebDriverWait(driver, 10, ignored_exceptions='StaleElementReferenceException') | ||||
| 			reg_form = wait2.until(EC.presence_of_element_located((By.ID, "frm"))) | ||||
| 			name_field = reg_form.find_element(By.XPATH, "//form/input[2]") | ||||
| 			name_field.send_keys(name) | ||||
| 			email_field = reg_form.find_element(By.XPATH, "//form/input[3]") | ||||
| 			email_field.send_keys(email) | ||||
| 			 | ||||
| 			#Find and fill password | ||||
| 			password_field = signup_form.find_element(By.ID, "password1") | ||||
| 			password_field = reg_form.find_element(By.XPATH, "//form/input[4]") | ||||
| 			password_field.send_keys(password) | ||||
| 			 | ||||
| 			#Find and fill password confirmation | ||||
| 			re_password_field = signup_form.find_element(By.ID, "password2") | ||||
| 			re_password_field = reg_form.find_element(By.XPATH, "//form/input[5]") | ||||
| 			re_password_field.send_keys(password) | ||||
| 			 | ||||
| 			#Sign up new student | ||||
| 			submit = signup_form.find_element(By.ID, "signup_btn") | ||||
| 			submit = reg_form.find_element(By.XPATH, "//form/input[6]") | ||||
| 			submit.click() | ||||
| 			return 0 | ||||
| 
 | ||||
|  | @ -312,12 +302,3 @@ class MyUtility: | |||
| 			ls.append(chr(random.randint(97,122))) | ||||
| 
 | ||||
| 		return ''.join(ls) | ||||
| 
 | ||||
| 	def clean(self, file): | ||||
| 		"""This method clean the test scripts directory by resetting some | ||||
| 		.txt files. | ||||
| 		""" | ||||
| 
 | ||||
| 		#Clean 'course_code.txt' file | ||||
| 		f = open(file, "w+") | ||||
| 		f.close() | ||||
|  |  | |||
		Loading…
	
		Reference in New Issue