├── screenshots ├── 1.JPG ├── 10.JPG ├── 2.JPG ├── 3.JPG ├── 4.JPG ├── 5.JPG ├── 6.JPG ├── 7.JPG ├── 8.JPG ├── 9.JPG ├── md1.jpg ├── md2.jpg ├── md3.jpg ├── md4.jpg ├── mp1.jpg ├── mp2.jpg ├── mp3.jpg ├── mp4.jpg └── System Diagram.jpg ├── assets ├── img │ ├── logo.png │ ├── next.png │ ├── prev.png │ ├── hero-bg.png │ ├── next-black.png │ ├── prev-black.png │ └── thank_you.png ├── vendors │ ├── chartjs │ │ └── Chart.min.css │ └── DataTables │ │ ├── 01_Driver_ProvisionTickets.js │ │ ├── 01_Driver_PendingFine&PaidFine.js │ │ ├── 02_TPO_ViewReportedFine.js │ │ ├── 04_Admin_PaidFineTickets.js │ │ ├── 04_Admin_ProvisionDetails.js │ │ ├── 03_MTD_ViewAllDrivers.js │ │ ├── 04_Admin_Paid&PendingFineTickets.js │ │ ├── 03_MTD_ViewAllDrivers - Copy.js │ │ ├── 04_Admin_ViewAllTrafficPoliceOfficers.js │ │ ├── buttons.print.min.js │ │ └── dataTables.bootstrap4.min.js ├── css │ └── login.css └── js │ └── main.js ├── admin ├── logout.php ├── fine_tickets_edit_modal_formdata.php ├── view_all_drivers_edit_modal_formdata.php ├── view_all_traffic_officers_edit_modal_formdata.php ├── profile_action_email.php ├── verification-code_action.php ├── mtd_account_action_email.php ├── new-password_action.php ├── fine_tickets_table.php ├── login_action.php ├── mtd_account_action_password.php ├── profile_action_password.php ├── fine_tickets_delete_modal.php ├── fine_tickets_action.php ├── includes │ └── topNav.php ├── forgot-password_action.php ├── paid_fine_tickets_view_modal.php ├── pending_fine_tickets_view_modal.php ├── view_all_drivers_delete_modal.php ├── view_all_traffic_officers_delete.php ├── add_traffic_officer_action.php ├── fine_tickets_edit_modal.php ├── view_all_traffic_officers_edit_modal.php ├── view_all_drivers_edit_modal.php ├── view_all_drivers_view_modal.php ├── forgot-password.php ├── new-password.php └── verification-code.php ├── mtd ├── logout.php ├── view_all_drivers_edit_modal_formdata.php ├── verification-code_action.php ├── new-password_action.php ├── login_action.php ├── profile_action.php ├── includes │ └── topNav.php ├── forgot-password_action.php ├── view_all_drivers_delete_modal.php ├── view_all_drivers_edit_modal.php ├── view_all_drivers_view_modal.php ├── forgot-password.php ├── add_driver_action.php ├── new-password.php └── verification-code.php ├── tpo ├── logout.php ├── get-amount.php ├── verification-code_action.php ├── new-password_action.php ├── view_reported_fine_table.php ├── login_action.php ├── profile_action.php ├── includes │ └── topNav.php ├── forgot-password_action.php ├── driver_past_fine_search_form.php ├── forgot-password.php ├── new-password.php └── verification-code.php ├── user ├── logout.php ├── includes │ ├── paid_fine_modal.php │ ├── pending_fine_modal.php │ └── topNav.php ├── notify.php ├── verification-code_action.php ├── fine_tickets_table.php ├── new-password_action.php ├── login_action.php ├── paid_fine_table.php ├── payements_thankyou.php ├── paid_fine_view_modal.php ├── profile_action.php ├── forgot-password_action.php ├── pending_fine_table.php ├── pending_fine_view_modal.php ├── forgot-password.php ├── new-password.php └── verification-code.php ├── .idea ├── vcs.xml ├── misc.xml ├── modules.xml ├── STFMS.iml └── workspace.xml ├── connection.php ├── .htaccess ├── Sample User Roles Login Details.txt ├── includes ├── header.php └── footer.php └── README.md /screenshots/1.JPG: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/samithawijesekara/2.2-Project-Smart-Traffic-Fine-Management-System/HEAD/screenshots/1.JPG -------------------------------------------------------------------------------- /screenshots/10.JPG: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/samithawijesekara/2.2-Project-Smart-Traffic-Fine-Management-System/HEAD/screenshots/10.JPG -------------------------------------------------------------------------------- /screenshots/2.JPG: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/samithawijesekara/2.2-Project-Smart-Traffic-Fine-Management-System/HEAD/screenshots/2.JPG -------------------------------------------------------------------------------- /screenshots/3.JPG: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/samithawijesekara/2.2-Project-Smart-Traffic-Fine-Management-System/HEAD/screenshots/3.JPG -------------------------------------------------------------------------------- /screenshots/4.JPG: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/samithawijesekara/2.2-Project-Smart-Traffic-Fine-Management-System/HEAD/screenshots/4.JPG -------------------------------------------------------------------------------- /screenshots/5.JPG: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/samithawijesekara/2.2-Project-Smart-Traffic-Fine-Management-System/HEAD/screenshots/5.JPG -------------------------------------------------------------------------------- /screenshots/6.JPG: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/samithawijesekara/2.2-Project-Smart-Traffic-Fine-Management-System/HEAD/screenshots/6.JPG -------------------------------------------------------------------------------- /screenshots/7.JPG: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/samithawijesekara/2.2-Project-Smart-Traffic-Fine-Management-System/HEAD/screenshots/7.JPG -------------------------------------------------------------------------------- /screenshots/8.JPG: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/samithawijesekara/2.2-Project-Smart-Traffic-Fine-Management-System/HEAD/screenshots/8.JPG -------------------------------------------------------------------------------- /screenshots/9.JPG: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/samithawijesekara/2.2-Project-Smart-Traffic-Fine-Management-System/HEAD/screenshots/9.JPG -------------------------------------------------------------------------------- /assets/img/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/samithawijesekara/2.2-Project-Smart-Traffic-Fine-Management-System/HEAD/assets/img/logo.png -------------------------------------------------------------------------------- /assets/img/next.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/samithawijesekara/2.2-Project-Smart-Traffic-Fine-Management-System/HEAD/assets/img/next.png -------------------------------------------------------------------------------- /assets/img/prev.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/samithawijesekara/2.2-Project-Smart-Traffic-Fine-Management-System/HEAD/assets/img/prev.png -------------------------------------------------------------------------------- /screenshots/md1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/samithawijesekara/2.2-Project-Smart-Traffic-Fine-Management-System/HEAD/screenshots/md1.jpg -------------------------------------------------------------------------------- /screenshots/md2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/samithawijesekara/2.2-Project-Smart-Traffic-Fine-Management-System/HEAD/screenshots/md2.jpg -------------------------------------------------------------------------------- /screenshots/md3.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/samithawijesekara/2.2-Project-Smart-Traffic-Fine-Management-System/HEAD/screenshots/md3.jpg -------------------------------------------------------------------------------- /screenshots/md4.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/samithawijesekara/2.2-Project-Smart-Traffic-Fine-Management-System/HEAD/screenshots/md4.jpg -------------------------------------------------------------------------------- /screenshots/mp1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/samithawijesekara/2.2-Project-Smart-Traffic-Fine-Management-System/HEAD/screenshots/mp1.jpg -------------------------------------------------------------------------------- /screenshots/mp2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/samithawijesekara/2.2-Project-Smart-Traffic-Fine-Management-System/HEAD/screenshots/mp2.jpg -------------------------------------------------------------------------------- /screenshots/mp3.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/samithawijesekara/2.2-Project-Smart-Traffic-Fine-Management-System/HEAD/screenshots/mp3.jpg -------------------------------------------------------------------------------- /screenshots/mp4.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/samithawijesekara/2.2-Project-Smart-Traffic-Fine-Management-System/HEAD/screenshots/mp4.jpg -------------------------------------------------------------------------------- /assets/img/hero-bg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/samithawijesekara/2.2-Project-Smart-Traffic-Fine-Management-System/HEAD/assets/img/hero-bg.png -------------------------------------------------------------------------------- /assets/img/next-black.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/samithawijesekara/2.2-Project-Smart-Traffic-Fine-Management-System/HEAD/assets/img/next-black.png -------------------------------------------------------------------------------- /assets/img/prev-black.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/samithawijesekara/2.2-Project-Smart-Traffic-Fine-Management-System/HEAD/assets/img/prev-black.png -------------------------------------------------------------------------------- /assets/img/thank_you.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/samithawijesekara/2.2-Project-Smart-Traffic-Fine-Management-System/HEAD/assets/img/thank_you.png -------------------------------------------------------------------------------- /screenshots/System Diagram.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/samithawijesekara/2.2-Project-Smart-Traffic-Fine-Management-System/HEAD/screenshots/System Diagram.jpg -------------------------------------------------------------------------------- /admin/logout.php: -------------------------------------------------------------------------------- 1 | 2 | 3 | -------------------------------------------------------------------------------- /mtd/logout.php: -------------------------------------------------------------------------------- 1 | 2 | 3 | -------------------------------------------------------------------------------- /tpo/logout.php: -------------------------------------------------------------------------------- 1 | 2 | 3 | -------------------------------------------------------------------------------- /user/logout.php: -------------------------------------------------------------------------------- 1 | 2 | 3 | -------------------------------------------------------------------------------- /.idea/vcs.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /.idea/misc.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /connection.php: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /.idea/modules.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /.htaccess: -------------------------------------------------------------------------------- 1 | RewriteEngine on 2 | RewriteCond %{THE_REQUEST} /([^.]+)\.php [NC] 3 | RewriteRule ^ /%1 [NC,L,R] 4 | 5 | RewriteCond %{REQUEST_FILENAME}.php -f 6 | RewriteRule ^ %{REQUEST_URI}.php [NC,L] 7 | 8 | #Disabling Directory Browse 9 | Options -Indexes 10 | 11 | #404 page 12 | ErrorDocument 404 http://localhost/STFMS/404.php 13 | 14 | 15 | -------------------------------------------------------------------------------- /.idea/STFMS.iml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /admin/fine_tickets_edit_modal_formdata.php: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /admin/view_all_drivers_edit_modal_formdata.php: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /mtd/view_all_drivers_edit_modal_formdata.php: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /admin/view_all_traffic_officers_edit_modal_formdata.php: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /Sample User Roles Login Details.txt: -------------------------------------------------------------------------------- 1 | Sample Login Details 2 | 3 | Traffic Police Admin: 4 | 5 | Email: stfmssample@gmail.com 6 | Password: cha123456 7 | 8 | 9 | Motor Traffic Department: 10 | 11 | Email: stfmssample@gmail.com 12 | Password: cha123456 13 | 14 | 15 | Traffic Police Officer: 16 | 17 | Email: stfmssample@gmail.com 18 | Password: cha123456 19 | 20 | 21 | Driver: 22 | 23 | Email: stfmssample@gmail.com 24 | Password: cha123456 25 | 26 | 27 | -------------------------------------------------------------------------------- /assets/vendors/chartjs/Chart.min.css: -------------------------------------------------------------------------------- 1 | @keyframes chartjs-render-animation{from{opacity:.99}to{opacity:1}}.chartjs-render-monitor{animation:chartjs-render-animation 1ms}.chartjs-size-monitor,.chartjs-size-monitor-expand,.chartjs-size-monitor-shrink{position:absolute;direction:ltr;left:0;top:0;right:0;bottom:0;overflow:hidden;pointer-events:none;visibility:hidden;z-index:-1}.chartjs-size-monitor-expand>div{position:absolute;width:1000000px;height:1000000px;left:0;top:0}.chartjs-size-monitor-shrink>div{position:absolute;width:200%;height:200%;left:0;top:0} -------------------------------------------------------------------------------- /tpo/get-amount.php: -------------------------------------------------------------------------------- 1 | {$result['fine_amount']}"; 14 | } 15 | echo $district_list; 16 | } else { 17 | echo ""; 18 | } 19 | 20 | 21 | ?> -------------------------------------------------------------------------------- /assets/vendors/DataTables/01_Driver_ProvisionTickets.js: -------------------------------------------------------------------------------- 1 | // Call the dataTables jQuery plugin 2 | $(document).ready(function() { 3 | $('#dataTable').DataTable({ 4 | dom: 'Bfrtip', 5 | "searching": true, 6 | "fixedColumns": true, 7 | "paging": true, 8 | "responsive": true, 9 | "select": true, 10 | "order": [ 11 | [0, "asc"] 12 | ], 13 | "ordering": true, 14 | "lengthMenu": [ 15 | [20, 40, 60, 100, -1], 16 | [20, 40, 60, 100, "All"] 17 | ], 18 | "columnDefs": [{ 19 | "targets": [1], 20 | "orderable": true 21 | }, { 22 | "targets": [1], 23 | "visible": true, 24 | "searchable": true 25 | }], 26 | 27 | buttons: [ 28 | ], 29 | }); 30 | }); -------------------------------------------------------------------------------- /assets/vendors/DataTables/01_Driver_PendingFine&PaidFine.js: -------------------------------------------------------------------------------- 1 | // Call the dataTables jQuery plugin 2 | $(document).ready(function() { 3 | $('#dataTable').DataTable({ 4 | dom: 'Bfrtip', 5 | "searching": true, 6 | "fixedColumns": true, 7 | "paging": true, 8 | "responsive": true, 9 | "select": true, 10 | "order": [ 11 | [0, "asc"] 12 | ], 13 | "ordering": true, 14 | "lengthMenu": [ 15 | [20, 40, 60, 100, -1], 16 | [20, 40, 60, 100, "All"] 17 | ], 18 | "columnDefs": [{ 19 | "targets": [1], 20 | "orderable": true 21 | }, { 22 | "targets": [1], 23 | "visible": true, 24 | "searchable": true 25 | }], 26 | 27 | buttons: [ 28 | ], 29 | }); 30 | }); -------------------------------------------------------------------------------- /assets/vendors/DataTables/02_TPO_ViewReportedFine.js: -------------------------------------------------------------------------------- 1 | // Call the dataTables jQuery plugin 2 | $(document).ready(function() { 3 | $('#dataTable').DataTable({ 4 | dom: 'Bfrtip', 5 | "searching": true, 6 | "fixedColumns": true, 7 | "paging": true, 8 | "responsive": true, 9 | "select": true, 10 | "order": [ 11 | [0, "asc"] 12 | ], 13 | "ordering": true, 14 | "lengthMenu": [ 15 | [20, 40, 60, 100, -1], 16 | [20, 40, 60, 100, "All"] 17 | ], 18 | 19 | "columnDefs": [{ 20 | "targets": [1], 21 | "orderable": true 22 | }, { 23 | "targets": [1], 24 | "visible": true, 25 | "searchable": true 26 | }], 27 | 28 | buttons: [ 29 | ], 30 | 31 | }); 32 | }); -------------------------------------------------------------------------------- /user/includes/paid_fine_modal.php: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /user/includes/pending_fine_modal.php: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /user/notify.php: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /admin/profile_action_email.php: -------------------------------------------------------------------------------- 1 | 5 | 6 | 7 | 0) { 24 | header("Location: profile.php?error=You entered old admin email; Nothing to change."); 25 | exit(); 26 | } 27 | else { 28 | mysqli_query($conn,"update admins set admin_email='$changeemail' "); 29 | header("Location: profile.php?success=Admin email changed successfully."); 30 | exit(); 31 | } 32 | } 33 | } 34 | else { 35 | header("Location: profile.php?error=Error Occured."); 36 | exit(); 37 | } 38 | ?> 39 | 45 | -------------------------------------------------------------------------------- /mtd/verification-code_action.php: -------------------------------------------------------------------------------- 1 | 0){ 17 | $newQuery = "UPDATE mtd SET code = 0"; 18 | $run = mysqli_query($conn,$newQuery); 19 | header("location: new-password.php"); 20 | }else{ 21 | header("Location: verification-code.php?error=Invalid Verification code!"); 22 | exit(); 23 | } 24 | }else{ 25 | header("Location: verification-code.php?error=Invalid Verification code!"); 26 | exit(); 27 | } 28 | } 29 | 30 | }else{ 31 | header("location: verification-code.php"); 32 | exit(); 33 | } 34 | ?> -------------------------------------------------------------------------------- /tpo/verification-code_action.php: -------------------------------------------------------------------------------- 1 | 0){ 17 | $newQuery = "UPDATE tpo SET code = 0"; 18 | $run = mysqli_query($conn,$newQuery); 19 | header("location: new-password.php"); 20 | }else{ 21 | header("Location: verification-code.php?error=Invalid Verification code!"); 22 | exit(); 23 | } 24 | }else{ 25 | header("Location: verification-code.php?error=Invalid Verification code!"); 26 | exit(); 27 | } 28 | } 29 | 30 | }else{ 31 | header("location: verification-code.php"); 32 | exit(); 33 | } 34 | ?> -------------------------------------------------------------------------------- /admin/verification-code_action.php: -------------------------------------------------------------------------------- 1 | 0){ 17 | $newQuery = "UPDATE admins SET code = 0"; 18 | $run = mysqli_query($conn,$newQuery); 19 | header("location: new-password.php"); 20 | }else{ 21 | header("Location: verification-code.php?error=Invalid Verification code!"); 22 | exit(); 23 | } 24 | }else{ 25 | header("Location: verification-code.php?error=Invalid Verification code!"); 26 | exit(); 27 | } 28 | } 29 | 30 | }else{ 31 | header("location: verification-code.php"); 32 | exit(); 33 | } 34 | ?> -------------------------------------------------------------------------------- /user/verification-code_action.php: -------------------------------------------------------------------------------- 1 | 0){ 17 | $newQuery = "UPDATE driver SET code = 0"; 18 | $run = mysqli_query($conn,$newQuery); 19 | header("location: new-password.php"); 20 | }else{ 21 | header("Location: verification-code.php?error=Invalid Verification code!"); 22 | exit(); 23 | } 24 | }else{ 25 | header("Location: verification-code.php?error=Invalid Verification code!"); 26 | exit(); 27 | } 28 | } 29 | 30 | }else{ 31 | header("location: verification-code.php"); 32 | exit(); 33 | } 34 | ?> -------------------------------------------------------------------------------- /admin/mtd_account_action_email.php: -------------------------------------------------------------------------------- 1 | 5 | 6 | 7 | 8 | 9 | 0) { 26 | header("Location: mtd_account.php?error=You entered old MTD email; Nothing to change."); 27 | exit(); 28 | } 29 | else { 30 | mysqli_query($conn,"update mtd set mtd_email='$changeemail' "); 31 | header("Location: mtd_account.php?success=MTD email changed successfully."); 32 | exit(); 33 | } 34 | } 35 | } 36 | else { 37 | header("Location: mtd_account.php?error=Error Occured."); 38 | exit(); 39 | } 40 | ?> 41 | 42 | 48 | -------------------------------------------------------------------------------- /user/fine_tickets_table.php: -------------------------------------------------------------------------------- 1 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 38 | 39 |
Fine IDSection of ActProvisionFine Amount
Fine IDSection of ActProvisionFine Amount
40 | 41 | 47 | 48 | -------------------------------------------------------------------------------- /mtd/new-password_action.php: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /admin/new-password_action.php: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /tpo/new-password_action.php: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /user/new-password_action.php: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /admin/fine_tickets_table.php: -------------------------------------------------------------------------------- 1 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 35 | 36 | 41 | 42 | 43 | 44 | 45 | 46 | 48 | 49 |
ActionFine IDSection of ActProvisionFine Amount
ActionFine IDSection of ActProvisionFine Amount
37 | 38 | 39 | 40 |
50 | 51 | -------------------------------------------------------------------------------- /admin/login_action.php: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /mtd/login_action.php: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /.idea/workspace.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 10 | 11 | 13 | 14 | 15 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 1621598191926 27 | 31 | 32 | 33 | -------------------------------------------------------------------------------- /admin/mtd_account_action_password.php: -------------------------------------------------------------------------------- 1 | 5 | 6 | 7 | 8 | 9 | 0) { 34 | header("Location: mtd_account.php?error=You have entered old password."); 35 | exit(); 36 | } 37 | else { 38 | $passwordconfirm = md5($passwordconfirm); 39 | if($newpassword == $passwordconfirm){ 40 | mysqli_query($conn,"update mtd set mtd_password='$newpassword' "); 41 | header("Location: mtd_account.php?success=Password changed successfully."); 42 | exit(); 43 | } 44 | else{ 45 | header("Location: mtd_account.php?error=New password and confirm password doesn't match."); 46 | exit(); 47 | } 48 | } 49 | } 50 | } 51 | else { 52 | header("Location: mtd_account.php?error=Error Occured."); 53 | exit(); 54 | } 55 | ?> 56 | 62 | -------------------------------------------------------------------------------- /tpo/view_reported_fine_table.php: -------------------------------------------------------------------------------- 1 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 45 | 46 |
Reference NoDriving License NoProvisionVehicle NoTotal AmountIssue Date
Reference NoDriving License NoProvisionVehicle NoTotal AmountIssue Date
47 | 48 | 54 | -------------------------------------------------------------------------------- /user/login_action.php: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /tpo/login_action.php: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /assets/vendors/DataTables/04_Admin_PaidFineTickets.js: -------------------------------------------------------------------------------- 1 | // Call the dataTables jQuery plugin 2 | $(document).ready(function() { 3 | $('#dataTable').DataTable({ 4 | dom: 'Bfrtip', 5 | "searching": true, 6 | "fixedColumns": true, 7 | "paging": true, 8 | "responsive": true, 9 | "select": true, 10 | "order": [ 11 | [0, "asc"] 12 | ], 13 | "ordering": true, 14 | "lengthMenu": [ 15 | [20, 40, 60, 100, -1], 16 | [20, 40, 60, 100, "All"] 17 | ], 18 | "columnDefs": [{ 19 | "targets": [1], 20 | "orderable": true 21 | }, { 22 | "targets": [1], 23 | "visible": true, 24 | "searchable": true 25 | }], 26 | 27 | buttons: [{ 28 | extend: 'csv', 29 | className: 'btn btn-primary mb-3', 30 | text: ' CSV', 31 | exportOptions: { 32 | columns: [1,2,3,4] 33 | } 34 | }, 35 | { 36 | extend: 'excel', 37 | className: 'btn btn-success mb-3', 38 | text: ' Excel', 39 | titleAttr: 'Excel', 40 | exportOptions: { 41 | columns: [1,2,3,4] 42 | } 43 | }, 44 | { 45 | extend: 'pdf', 46 | className: 'btn btn-danger mb-3', 47 | text: ' PDF', 48 | exportOptions: { 49 | columns: [1,2,3,4] 50 | } 51 | }, 52 | { 53 | extend: 'print', 54 | className: 'btn btn-dark mb-3', 55 | text: ' Print', 56 | exportOptions: { 57 | columns: [1,2,3,4] 58 | } 59 | } 60 | ], 61 | }); 62 | }); -------------------------------------------------------------------------------- /assets/vendors/DataTables/04_Admin_ProvisionDetails.js: -------------------------------------------------------------------------------- 1 | // Call the dataTables jQuery plugin 2 | $(document).ready(function() { 3 | $('#dataTable').DataTable({ 4 | dom: 'Bfrtip', 5 | "searching": true, 6 | "fixedColumns": true, 7 | "paging": true, 8 | "responsive": true, 9 | "select": true, 10 | "order": [ 11 | [0, "asc"] 12 | ], 13 | "ordering": true, 14 | "lengthMenu": [ 15 | [20, 40, 60, 100, -1], 16 | [20, 40, 60, 100, "All"] 17 | ], 18 | "columnDefs": [{ 19 | "targets": [1], 20 | "orderable": true 21 | }, { 22 | "targets": [1], 23 | "visible": true, 24 | "searchable": true 25 | }], 26 | 27 | buttons: [{ 28 | extend: 'csv', 29 | className: 'btn btn-primary mb-3', 30 | text: ' CSV', 31 | exportOptions: { 32 | columns: [1,2,3,4] 33 | } 34 | }, 35 | { 36 | extend: 'excel', 37 | className: 'btn btn-success mb-3', 38 | text: ' Excel', 39 | titleAttr: 'Excel', 40 | exportOptions: { 41 | columns: [1,2,3,4] 42 | } 43 | }, 44 | { 45 | extend: 'pdf', 46 | className: 'btn btn-danger mb-3', 47 | text: ' PDF', 48 | exportOptions: { 49 | columns: [1,2,3,4] 50 | } 51 | }, 52 | { 53 | extend: 'print', 54 | className: 'btn btn-dark mb-3', 55 | text: ' Print', 56 | exportOptions: { 57 | columns: [1,2,3,4] 58 | } 59 | } 60 | ], 61 | }); 62 | }); -------------------------------------------------------------------------------- /assets/vendors/DataTables/03_MTD_ViewAllDrivers.js: -------------------------------------------------------------------------------- 1 | // Call the dataTables jQuery plugin 2 | $(document).ready(function() { 3 | $('#dataTable').DataTable({ 4 | dom: 'Bfrtip', 5 | "searching": true, 6 | "fixedColumns": true, 7 | "paging": true, 8 | "responsive": true, 9 | "select": true, 10 | "order": [ 11 | [0, "asc"] 12 | ], 13 | "ordering": true, 14 | "lengthMenu": [ 15 | [20, 40, 60, 100, -1], 16 | [20, 40, 60, 100, "All"] 17 | ], 18 | "columnDefs": [{ 19 | "targets": [1], 20 | "orderable": true 21 | }, { 22 | "targets": [1], 23 | "visible": true, 24 | "searchable": true 25 | }], 26 | 27 | buttons: [{ 28 | extend: 'csv', 29 | className: 'btn btn-primary mb-3', 30 | text: ' CSV', 31 | exportOptions: { 32 | columns: [1,2,3,4,5] 33 | } 34 | }, 35 | { 36 | extend: 'excel', 37 | className: 'btn btn-success mb-3', 38 | text: ' Excel', 39 | titleAttr: 'Excel', 40 | exportOptions: { 41 | columns: [1,2,3,4,5] 42 | } 43 | }, 44 | { 45 | extend: 'pdf', 46 | className: 'btn btn-danger mb-3', 47 | text: ' PDF', 48 | exportOptions: { 49 | columns: [1,2,3,4,5] 50 | } 51 | }, 52 | { 53 | extend: 'print', 54 | className: 'btn btn-dark mb-3', 55 | text: ' Print', 56 | exportOptions: { 57 | columns: [1,2,3,4,5] 58 | } 59 | } 60 | ], 61 | }); 62 | }); -------------------------------------------------------------------------------- /assets/vendors/DataTables/04_Admin_Paid&PendingFineTickets.js: -------------------------------------------------------------------------------- 1 | // Call the dataTables jQuery plugin 2 | $(document).ready(function() { 3 | $('#dataTable').DataTable({ 4 | dom: 'Bfrtip', 5 | "searching": true, 6 | "fixedColumns": true, 7 | "paging": true, 8 | "responsive": true, 9 | "select": true, 10 | "order": [ 11 | [0, "asc"] 12 | ], 13 | "ordering": true, 14 | "lengthMenu": [ 15 | [20, 40, 60, 100, -1], 16 | [20, 40, 60, 100, "All"] 17 | ], 18 | "columnDefs": [{ 19 | "targets": [1], 20 | "orderable": true 21 | }, { 22 | "targets": [1], 23 | "visible": true, 24 | "searchable": true 25 | }], 26 | 27 | buttons: [{ 28 | extend: 'csv', 29 | className: 'btn btn-primary mb-3', 30 | text: ' CSV', 31 | exportOptions: { 32 | columns: [1,2,3,4] 33 | } 34 | }, 35 | { 36 | extend: 'excel', 37 | className: 'btn btn-success mb-3', 38 | text: ' Excel', 39 | titleAttr: 'Excel', 40 | exportOptions: { 41 | columns: [1,2,3,4] 42 | } 43 | }, 44 | { 45 | extend: 'pdf', 46 | className: 'btn btn-danger mb-3', 47 | text: ' PDF', 48 | exportOptions: { 49 | columns: [1,2,3,4] 50 | } 51 | }, 52 | { 53 | extend: 'print', 54 | className: 'btn btn-dark mb-3', 55 | text: ' Print', 56 | exportOptions: { 57 | columns: [1,2,3,4] 58 | } 59 | } 60 | ], 61 | }); 62 | }); -------------------------------------------------------------------------------- /assets/vendors/DataTables/03_MTD_ViewAllDrivers - Copy.js: -------------------------------------------------------------------------------- 1 | // Call the dataTables jQuery plugin 2 | $(document).ready(function() { 3 | $('#dataTable').DataTable({ 4 | dom: 'Bfrtip', 5 | "searching": true, 6 | "fixedColumns": true, 7 | "paging": true, 8 | "responsive": true, 9 | "select": true, 10 | "order": [ 11 | [0, "asc"] 12 | ], 13 | "ordering": true, 14 | "lengthMenu": [ 15 | [20, 40, 60, 100, -1], 16 | [20, 40, 60, 100, "All"] 17 | ], 18 | "columnDefs": [{ 19 | "targets": [1], 20 | "orderable": true 21 | }, { 22 | "targets": [1], 23 | "visible": true, 24 | "searchable": true 25 | }], 26 | 27 | buttons: [{ 28 | extend: 'csv', 29 | className: 'btn btn-primary mb-3', 30 | text: ' CSV', 31 | exportOptions: { 32 | columns: [1,2,3,4,5] 33 | } 34 | }, 35 | { 36 | extend: 'excel', 37 | className: 'btn btn-success mb-3', 38 | text: ' Excel', 39 | titleAttr: 'Excel', 40 | exportOptions: { 41 | columns: [1,2,3,4,5] 42 | } 43 | }, 44 | { 45 | extend: 'pdf', 46 | className: 'btn btn-danger mb-3', 47 | text: ' PDF', 48 | exportOptions: { 49 | columns: [1,2,3,4,5] 50 | } 51 | }, 52 | { 53 | extend: 'print', 54 | className: 'btn btn-dark mb-3', 55 | text: ' Print', 56 | exportOptions: { 57 | columns: [1,2,3,4,5] 58 | } 59 | } 60 | ], 61 | }); 62 | }); -------------------------------------------------------------------------------- /user/paid_fine_table.php: -------------------------------------------------------------------------------- 1 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 37 | 38 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 50 | 51 |
ActionReference NoProvisionVehicle NoIssue DatePaid DateAmount LKR
ActionReference NoProvisionVehicle NoIssue DatePaid DateAmount LKR
39 | 40 |
52 | 53 | 59 | 60 | -------------------------------------------------------------------------------- /assets/vendors/DataTables/04_Admin_ViewAllTrafficPoliceOfficers.js: -------------------------------------------------------------------------------- 1 | // Call the dataTables jQuery plugin 2 | $(document).ready(function() { 3 | $('#dataTable').DataTable({ 4 | dom: 'Bfrtip', 5 | "searching": true, 6 | "fixedColumns": true, 7 | "paging": true, 8 | "responsive": true, 9 | "select": true, 10 | "order": [ 11 | [0, "asc"] 12 | ], 13 | "ordering": true, 14 | "lengthMenu": [ 15 | [20, 40, 60, 100, -1], 16 | [20, 40, 60, 100, "All"] 17 | ], 18 | "columnDefs": [{ 19 | "targets": [1], 20 | "orderable": true 21 | }, { 22 | "targets": [1], 23 | "visible": true, 24 | "searchable": true 25 | }], 26 | 27 | buttons: [{ 28 | extend: 'csv', 29 | className: 'btn btn-primary mb-3', 30 | text: ' CSV', 31 | exportOptions: { 32 | columns: [1,2,3,4,5,6] 33 | } 34 | }, 35 | { 36 | extend: 'excel', 37 | className: 'btn btn-success mb-3', 38 | text: ' Excel', 39 | titleAttr: 'Excel', 40 | exportOptions: { 41 | columns: [1,2,3,4,5,6] 42 | } 43 | }, 44 | { 45 | extend: 'pdf', 46 | className: 'btn btn-danger mb-3', 47 | text: ' PDF', 48 | exportOptions: { 49 | columns: [1,2,3,4,5,6] 50 | } 51 | }, 52 | { 53 | extend: 'print', 54 | className: 'btn btn-dark mb-3', 55 | text: ' Print', 56 | exportOptions: { 57 | columns: [1,2,3,4,5,6] 58 | } 59 | } 60 | ], 61 | }); 62 | }); -------------------------------------------------------------------------------- /user/payements_thankyou.php: -------------------------------------------------------------------------------- 1 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | Thank you for payement 12 | 13 | 14 | 17 | 18 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 33 | 34 | 35 | 36 |
37 |
38 |

Thank you for payment

39 |
Your fine payment is successfully..! You will be redirected in 8 seconds. (skip)
40 |
41 |
42 | 43 |
44 |
45 |

Don't do the same mistake again..!!

46 |
47 |
48 | 49 | 50 | 53 | 54 | 55 | 56 | 63 | 64 | 65 | 66 | 67 | 73 | 74 | -------------------------------------------------------------------------------- /mtd/profile_action.php: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | -------------------------------------------------------------------------------- /tpo/profile_action.php: -------------------------------------------------------------------------------- 1 | '; 12 | while($row = mysqli_fetch_array($result)) 13 | { 14 | $output .= ' 15 | 16 | Reference No 17 | '.$row["ref_no"].' 18 | 19 | 20 | 21 | Police ID 22 | '.$row["police_id"].' 23 | 24 | 25 | 26 | License ID 27 | '.$row["license_id"].' 28 | 29 | 30 | 31 | Vehicle No 32 | '.$row["vehicle_no"].' 33 | 34 | 35 | 36 | Class of Vehicle 37 | '.$row["class_of_vehicle"].' 38 | 39 | 40 | Place 41 | '.$row["place"].' 42 | 43 | 44 | 45 | Issued Date 46 | '.$row["issued_date"].' 47 | 48 | 49 | 50 | Issued Time 51 | '.$row["issued_time"].' 52 | 53 | 54 | 55 | Provisions 56 | '.$row["provisions"].' 57 | 58 | 59 | 60 | 61 | Paid Date 62 | '.$row["paid_date"].' 63 | 64 | 65 | 66 | 67 | Paid Amount 68 | '.$row["total_amount"].' 69 | 70 | 71 | 72 | Status 73 | '.$row["status"].' 74 | 75 | 76 | '; 77 | } 78 | $output .= ' 79 | 80 | 81 | '; 82 | echo $output; 83 | } 84 | ?> 85 | -------------------------------------------------------------------------------- /user/profile_action.php: -------------------------------------------------------------------------------- 1 | ' . $message . ''; 20 | $select_query = "SELECT * FROM fine_tickets"; 21 | $result = mysqli_query($conn, $select_query); 22 | $output_del .= ' 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | '; 43 | while($row = mysqli_fetch_array($result)) 44 | { 45 | $output_del .= ' 46 | 47 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | '; 60 | } 61 | $output_del .= '
ActionFine IDSection of ActProvisionFine Amount
ActionFine IDSection of ActProvisionFine Amount
48 | 49 | 50 | ' . $row["fine_id"] . '' . $row["section_of_act"] . '' . $row["provision"] . '' . $row["fine_amount"] . '
'; 62 | } 63 | echo $output_del; 64 | 65 | ?> -------------------------------------------------------------------------------- /admin/fine_tickets_action.php: -------------------------------------------------------------------------------- 1 | 0) { 43 | header("Location: fine_tickets.php?errorr=Fine ID already exist!"); 44 | exit(); 45 | }else { 46 | 47 | $query = "INSERT INTO fine_tickets(fine_id, section_of_act, provision, fine_amount) VALUES ('$fineid','$sectionofact', '$provision', '$fineamount')"; 48 | $run = mysqli_query($conn, $query); 49 | if ($run) { 50 | header("Location: fine_tickets.php?successs=Fine ticket added successfully"); 51 | exit(); 52 | }else { 53 | header("Location: fine_tickets.php?errorr=Unknown error occurred!"); 54 | exit(); 55 | } 56 | } 57 | } 58 | }else{ 59 | header("Location: fine_tickets.php"); 60 | exit(); 61 | } 62 | 63 | ?> -------------------------------------------------------------------------------- /admin/includes/topNav.php: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 |
5 | 6 | 16 | 17 | 18 | 43 | 44 |
45 | -------------------------------------------------------------------------------- /mtd/includes/topNav.php: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 |
5 | 6 | 16 | 17 | 18 | 43 | 44 |
45 | -------------------------------------------------------------------------------- /tpo/includes/topNav.php: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 |
5 | 6 | 16 | 17 | 18 | 43 | 44 |
45 | -------------------------------------------------------------------------------- /user/includes/topNav.php: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 |
5 | 6 | 16 | 17 | 18 | 43 | 44 |
45 | -------------------------------------------------------------------------------- /assets/vendors/DataTables/buttons.print.min.js: -------------------------------------------------------------------------------- 1 | /*! 2 | Print button for Buttons and DataTables. 3 | 2016 SpryMedia Ltd - datatables.net/license 4 | */ 5 | (function(b){"function"===typeof define&&define.amd?define(["jquery","datatables.net","datatables.net-buttons"],function(c){return b(c,window,document)}):"object"===typeof exports?module.exports=function(c,g){c||(c=window);g&&g.fn.dataTable||(g=require("datatables.net")(c,g).$);g.fn.dataTable.Buttons||require("datatables.net-buttons")(c,g);return b(g,c,c.document)}:b(jQuery,window,document)})(function(b,c,g,y){var u=b.fn.dataTable,n=g.createElement("a"),v=function(a){n.href=a;a=n.host;-1===a.indexOf("/")&& 6 | 0!==n.pathname.indexOf("/")&&(a+="/");return n.protocol+"//"+a+n.pathname+n.search};u.ext.buttons.print={className:"buttons-print",text:function(a){return a.i18n("buttons.print","Print")},action:function(a,k,p,h){a=k.buttons.exportData(b.extend({decodeEntities:!1},h.exportOptions));p=k.buttons.exportInfo(h);var w=k.columns(h.exportOptions.columns).flatten().map(function(d){return k.settings()[0].aoColumns[k.column(d).index()].sClass}).toArray(),r=function(d,e){for(var x="",l=0,z=d.length;l"+(null===d[l]||d[l]===y?"":d[l])+"";return x+""},m='';h.header&&(m+=""+r(a.header,"th")+"");m+="";for(var t=0,A=a.body.length;t";h.footer&&a.footer&&(m+=""+r(a.footer,"th")+"");m+="
";var f=c.open("","");f.document.close();var q=""+p.title+"";b("style, link").each(function(){var d=q,e=b(this).clone()[0]; 8 | "link"===e.nodeName.toLowerCase()&&(e.href=v(e.href));q=d+e.outerHTML});try{f.document.head.innerHTML=q}catch(d){b(f.document.head).html(q)}f.document.body.innerHTML="

"+p.title+"

"+(p.messageTop||"")+"
"+m+"
"+(p.messageBottom||"")+"
";b(f.document.body).addClass("dt-print-view");b("img",f.document.body).each(function(d,e){e.setAttribute("src",v(e.getAttribute("src")))});h.customize&&h.customize(f,h,k);a=function(){h.autoPrint&&(f.print(),f.close())};navigator.userAgent.match(/Trident\/\d.\d/)? 9 | a():f.setTimeout(a,1E3)},title:"*",messageTop:"*",messageBottom:"*",exportOptions:{},header:!0,footer:!1,autoPrint:!0,customize:null};return u.Buttons}); -------------------------------------------------------------------------------- /mtd/forgot-password_action.php: -------------------------------------------------------------------------------- 1 | 0) { 22 | $code = rand(999999, 111111); 23 | $updateQuery = "UPDATE mtd SET code = $code WHERE mtd_email = '$email'"; 24 | $updateResult = mysqli_query($conn, $updateQuery); 25 | if ($updateResult) { 26 | $subject = "Email Verification Code"; 27 | $message = "Your verification code is $code"; 28 | $sender = "From: stfms@techbirdlabs.com"; 29 | 30 | if (mail($email, $subject, $message, $sender)) { 31 | header("location: verification-code.php?success= We've sent a verification code to your Email
$email"); 32 | exit(); 33 | } else { 34 | header("location: forgot-password.php?error= Failed while sending code!"); 35 | exit(); 36 | } 37 | } else { 38 | header("location: forgot-password.php?error=Failed while inserting data into database!"); 39 | exit(); 40 | } 41 | }else{ 42 | header("Location: forgot-password.php?error= Incorrect Email Address!"); 43 | exit(); 44 | } 45 | }else { 46 | header("location: forgot-password.php?error= Failed while checking email from database!"); 47 | exit(); 48 | } 49 | 50 | } 51 | }else{ 52 | header("location: forgot-password.php"); 53 | exit(); 54 | } 55 | 56 | ?> 57 | -------------------------------------------------------------------------------- /tpo/forgot-password_action.php: -------------------------------------------------------------------------------- 1 | 0) { 22 | $code = rand(999999, 111111); 23 | $updateQuery = "UPDATE tpo SET code = $code WHERE officer_email = '$email'"; 24 | $updateResult = mysqli_query($conn, $updateQuery); 25 | if ($updateResult) { 26 | $subject = "Email Verification Code"; 27 | $message = "Your verification code is $code"; 28 | $sender = "From: stfms@techbirdlabs.com"; 29 | 30 | if (mail($email, $subject, $message, $sender)) { 31 | header("location: verification-code.php?success= We've sent a verification code to your Email
$email"); 32 | exit(); 33 | } else { 34 | header("location: forgot-password.php?error= Failed while sending code!"); 35 | exit(); 36 | } 37 | } else { 38 | header("location: forgot-password.php?error=Failed while inserting data into database!"); 39 | exit(); 40 | } 41 | }else{ 42 | header("Location: forgot-password.php?error= Incorrect Email Address!"); 43 | exit(); 44 | } 45 | }else { 46 | header("location: forgot-password.php?error= Failed while checking email from database!"); 47 | exit(); 48 | } 49 | 50 | } 51 | }else{ 52 | header("location: forgot-password.php"); 53 | exit(); 54 | } 55 | 56 | ?> 57 | -------------------------------------------------------------------------------- /admin/forgot-password_action.php: -------------------------------------------------------------------------------- 1 | 0) { 22 | $code = rand(999999, 111111); 23 | $updateQuery = "UPDATE admins SET code = $code WHERE admin_email = '$email'"; 24 | $updateResult = mysqli_query($conn, $updateQuery); 25 | if ($updateResult) { 26 | $subject = "Email Verification Code"; 27 | $message = "Your verification code is $code"; 28 | $sender = "From: stfms@techbirdlabs.com"; 29 | 30 | if (mail($email, $subject, $message, $sender)) { 31 | header("location: verification-code.php?success= We've sent a verification code to your Email
$email"); 32 | exit(); 33 | } else { 34 | header("location: forgot-password.php?error= Failed while sending code!"); 35 | exit(); 36 | } 37 | } else { 38 | header("location: forgot-password.php?error=Failed while inserting data into database!"); 39 | exit(); 40 | } 41 | }else{ 42 | header("Location: forgot-password.php?error= Incorrect Email Address!"); 43 | exit(); 44 | } 45 | }else { 46 | header("location: forgot-password.php?error= Failed while checking email from database!"); 47 | exit(); 48 | } 49 | 50 | } 51 | }else{ 52 | header("location: forgot-password.php"); 53 | exit(); 54 | } 55 | 56 | ?> 57 | -------------------------------------------------------------------------------- /user/forgot-password_action.php: -------------------------------------------------------------------------------- 1 | 0) { 22 | $code = rand(999999, 111111); 23 | $updateQuery = "UPDATE driver SET code = $code WHERE driver_email = '$email'"; 24 | $updateResult = mysqli_query($conn, $updateQuery); 25 | if ($updateResult) { 26 | $subject = "Email Verification Code"; 27 | $message = "Your verification code is $code"; 28 | $sender = "From: stfms@techbirdlabs.com"; 29 | 30 | if (mail($email, $subject, $message, $sender)) { 31 | header("location: verification-code.php?success= We've sent a verification code to your Email
$email"); 32 | exit(); 33 | } else { 34 | header("location: forgot-password.php?error= Failed while sending code!"); 35 | exit(); 36 | } 37 | } else { 38 | header("location: forgot-password.php?error=Failed while inserting data into database!"); 39 | exit(); 40 | } 41 | }else{ 42 | header("Location: forgot-password.php?error= Incorrect Email Address!"); 43 | exit(); 44 | } 45 | }else { 46 | header("location: forgot-password.php?error= Failed while checking email from database!"); 47 | exit(); 48 | } 49 | 50 | } 51 | }else{ 52 | header("location: forgot-password.php"); 53 | exit(); 54 | } 55 | 56 | ?> 57 | -------------------------------------------------------------------------------- /user/pending_fine_table.php: -------------------------------------------------------------------------------- 1 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 40 | 41 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 56 | 57 |
ActionReference NoProvisionVehicle NoIssue DateExpire DateCourt DateAmount LKR
ActionReference NoProvisionVehicle NoIssue DateExpire DateCourt DateAmount LKR
42 | 43 | 44 |
58 | 59 | 65 | 66 | -------------------------------------------------------------------------------- /user/pending_fine_view_modal.php: -------------------------------------------------------------------------------- 1 | '; 12 | while($row = mysqli_fetch_array($result)) 13 | { 14 | $output .= ' 15 | 16 | Reference No 17 | '.$row["ref_no"].' 18 | 19 | 20 | 21 | Police ID 22 | '.$row["police_id"].' 23 | 24 | 25 | 26 | License ID 27 | '.$row["license_id"].' 28 | 29 | 30 | 31 | Vehicle No 32 | '.$row["vehicle_no"].' 33 | 34 | 35 | 36 | Class of Vehicle 37 | '.$row["class_of_vehicle"].' 38 | 39 | 40 | Place 41 | '.$row["place"].' 42 | 43 | 44 | 45 | Issued Date 46 | '.$row["issued_date"].' 47 | 48 | 49 | 50 | Issued Time 51 | '.$row["issued_time"].' 52 | 53 | 54 | 55 | Expire Date 56 | '.$row["expire_date"].' 57 | 58 | 59 | 60 | Court 61 | '.$row["court"].' 62 | 63 | 64 | 65 | Court Date 66 | '.$row["court_date"].' 67 | 68 | 69 | 70 | Provisions 71 | '.$row["provisions"].' 72 | 73 | 74 | 75 | Total Amount 76 | '.$row["total_amount"].' 77 | 78 | 79 | 80 | Status 81 | '.$row["status"].' 82 | 83 | 84 | '; 85 | } 86 | $output .= ' 87 | 88 | 89 | '; 90 | echo $output; 91 | } 92 | ?> 93 | -------------------------------------------------------------------------------- /admin/paid_fine_tickets_view_modal.php: -------------------------------------------------------------------------------- 1 | '; 12 | while($row = mysqli_fetch_array($result)) 13 | { 14 | $output .= ' 15 | 16 | Reference No 17 | '.$row["ref_no"].' 18 | 19 | 20 | 21 | Police ID 22 | '.$row["police_id"].' 23 | 24 | 25 | 26 | License ID 27 | '.$row["license_id"].' 28 | 29 | 30 | 31 | Vehicle No 32 | '.$row["vehicle_no"].' 33 | 34 | 35 | 36 | Class of Vehicle 37 | '.$row["class_of_vehicle"].' 38 | 39 | 40 | Place 41 | '.$row["place"].' 42 | 43 | 44 | 45 | Issued Date 46 | '.$row["issued_date"].' 47 | 48 | 49 | 50 | Issued Time 51 | '.$row["issued_time"].' 52 | 53 | 54 | 55 | Expire Date 56 | '.$row["expire_date"].' 57 | 58 | 59 | 60 | Court 61 | '.$row["court"].' 62 | 63 | 64 | 65 | Court Date 66 | '.$row["court_date"].' 67 | 68 | 69 | 70 | Provisions 71 | '.$row["provisions"].' 72 | 73 | 74 | 75 | Total Amount 76 | '.$row["total_amount"].' 77 | 78 | 79 | 80 | Status 81 | '.$row["status"].' 82 | 83 | 84 | '; 85 | } 86 | $output .= ' 87 | 88 | 89 | '; 90 | echo $output; 91 | } 92 | ?> 93 | -------------------------------------------------------------------------------- /admin/pending_fine_tickets_view_modal.php: -------------------------------------------------------------------------------- 1 | '; 12 | while($row = mysqli_fetch_array($result)) 13 | { 14 | $output .= ' 15 | 16 | Reference No 17 | '.$row["ref_no"].' 18 | 19 | 20 | 21 | Police ID 22 | '.$row["police_id"].' 23 | 24 | 25 | 26 | License ID 27 | '.$row["license_id"].' 28 | 29 | 30 | 31 | Vehicle No 32 | '.$row["vehicle_no"].' 33 | 34 | 35 | 36 | Class of Vehicle 37 | '.$row["class_of_vehicle"].' 38 | 39 | 40 | Place 41 | '.$row["place"].' 42 | 43 | 44 | 45 | Issued Date 46 | '.$row["issued_date"].' 47 | 48 | 49 | 50 | Issued Time 51 | '.$row["issued_time"].' 52 | 53 | 54 | 55 | Expire Date 56 | '.$row["expire_date"].' 57 | 58 | 59 | 60 | Court 61 | '.$row["court"].' 62 | 63 | 64 | 65 | Court Date 66 | '.$row["court_date"].' 67 | 68 | 69 | 70 | Provisions 71 | '.$row["provisions"].' 72 | 73 | 74 | 75 | Total Amount 76 | '.$row["total_amount"].' 77 | 78 | 79 | 80 | Status 81 | '.$row["status"].' 82 | 83 | 84 | '; 85 | } 86 | $output .= ' 87 | 88 | 89 | '; 90 | echo $output; 91 | } 92 | ?> 93 | -------------------------------------------------------------------------------- /admin/view_all_drivers_delete_modal.php: -------------------------------------------------------------------------------- 1 | ' . $message . ''; 20 | $select_query = "SELECT * FROM driver"; 21 | $result = mysqli_query($conn, $select_query); 22 | $output_del .= ' 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | '; 41 | while($row = mysqli_fetch_array($result)) 42 | { 43 | $output_del .= ' 44 | 45 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | '; 59 | } 60 | $output_del .= '
ActionLicense IDDriver Full NameLicense Issue DateLicense Expire Date
ActionLicense IDDriver Full NameLicense Issue DateLicense Expire Date
46 | 47 | 48 | 49 | ' . $row["license_id"] . '' . $row["driver_name"] . '' . $row["license_issue_date"] . '' . $row["license_expire_date"] . '
'; 61 | } 62 | echo $output_del; 63 | 64 | ?> -------------------------------------------------------------------------------- /admin/view_all_traffic_officers_delete.php: -------------------------------------------------------------------------------- 1 | ' . $message . ''; 21 | $select_query = "SELECT * FROM tpo"; 22 | $result = mysqli_query($conn, $select_query); 23 | $output_del .= ' 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | '; 49 | while($row = mysqli_fetch_array($result)) 50 | { 51 | $output_del .= ' 52 | 53 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | 66 | '; 67 | } 68 | $output_del .= '
ActionTraffic Officer IDTraffic Officer NamePolice StationCourtTraffic Officer EmailRegistered Date
ActionTraffic Officer IDTraffic Officer NamePolice StationCourtTraffic Officer EmailRegistered Date
54 | 55 | 56 | ' . $row["police_id"] . '' . $row["officer_name"] . '' . $row["police_station"] . '' . $row["court"] . '' . $row["officer_email"] . '' . $row["registered_at"] . '
'; 69 | } 70 | echo $output_del; */ 71 | 72 | ?> 73 | -------------------------------------------------------------------------------- /assets/css/login.css: -------------------------------------------------------------------------------- 1 | body { 2 | background: #0f3057; 3 | overflow-x: hidden; 4 | 5 | } 6 | 7 | a, a:hover,a:visited, a:focus { 8 | text-decoration:none; 9 | } 10 | 11 | .card-signin { 12 | border: 0; 13 | border-radius: 1rem; 14 | box-shadow: 0 0.5rem 1rem 0 rgba(0, 0, 0, 0.1); 15 | } 16 | 17 | .card-icon { 18 | font-size: 5.5rem; 19 | text-align: center; 20 | color: #00587a; 21 | } 22 | 23 | .card-signin .card-title { 24 | margin-bottom: 2rem; 25 | font-weight: 400; 26 | font-size: 1.5rem; 27 | } 28 | 29 | .card-signin .card-body { 30 | padding: 1.5rem 2rem; 31 | } 32 | 33 | .form-signin { 34 | width: 100%; 35 | } 36 | 37 | .form-signin .btn { 38 | font-size: 80%; 39 | border-radius: 5rem; 40 | letter-spacing: .1rem; 41 | font-weight: bold; 42 | padding: 1rem; 43 | transition: all 0.2s; 44 | } 45 | 46 | .form-label-group { 47 | position: relative; 48 | margin-bottom: 1rem; 49 | } 50 | 51 | .form-label-group input { 52 | height: auto; 53 | border-radius: 2rem; 54 | padding: 12px 18px 12px 18px; 55 | font-weight: 600; 56 | } 57 | 58 | /* Styles for placeholder*/ 59 | .form-label-group input::-webkit-input-placeholder { 60 | color: #909090; 61 | } 62 | 63 | .form-label-group input:-ms-input-placeholder { 64 | color: #909090; 65 | } 66 | 67 | .form-label-group input::-ms-input-placeholder { 68 | color: #909090; 69 | } 70 | 71 | .form-label-group input::-moz-placeholder { 72 | color: #909090; 73 | } 74 | 75 | .form-label-group input::placeholder { 76 | color: #909090; 77 | } 78 | 79 | 80 | .btn { 81 | background-color: #00587a; 82 | color: #fbfbf7; 83 | } 84 | 85 | .btn:hover { 86 | background-color: #008891; 87 | } 88 | 89 | .forget-pw { 90 | font-weight: 400; 91 | margin-left: 0.5rem; 92 | } 93 | 94 | /*===================================Media Queries=============================*/ 95 | 96 | @media (max-width: 448px) { 97 | .homelink{ 98 | display: none; 99 | } 100 | .login-section{ 101 | margin-top: 10%; 102 | } 103 | } 104 | 105 | @media (max-width: 576px) { 106 | .homelink{ 107 | display: none; 108 | } 109 | .login-section{ 110 | margin-top: 15%; 111 | } 112 | } 113 | 114 | @media (max-width: 768px) { 115 | .homelink{ 116 | display: none; 117 | } 118 | .login-section{ 119 | margin-top: 16%; 120 | } 121 | } 122 | 123 | @media (max-width: 992px) { 124 | .homelink{ 125 | display: none; 126 | } 127 | } 128 | -------------------------------------------------------------------------------- /includes/footer.php: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 32 | 33 | 34 | -------------------------------------------------------------------------------- /assets/js/main.js: -------------------------------------------------------------------------------- 1 | const body = document.getElementsByTagName('body')[0] 2 | 3 | //Left sidebar toggle 4 | function collapseSidebar() { 5 | body.classList.toggle('leftsidebar-expand') 6 | } 7 | 8 | //Topnavbar dropdown function 9 | window.onclick = function(event) { 10 | openCloseDropdown(event) 11 | } 12 | 13 | function closeAllDropdown() { 14 | var dropdowns = document.getElementsByClassName('mydropdown-expand') 15 | for (var i = 0; i < dropdowns.length; i++) { 16 | dropdowns[i].classList.remove('mydropdown-expand') 17 | } 18 | } 19 | 20 | function openCloseDropdown(event) { 21 | if (!event.target.matches('.mydropdown-toggle')) { 22 | closeAllDropdown() 23 | } else { 24 | var toggle = event.target.dataset.toggle 25 | var content = document.getElementById(toggle) 26 | if (content.classList.contains('mydropdown-expand')) { 27 | closeAllDropdown() 28 | } else { 29 | closeAllDropdown() 30 | content.classList.add('mydropdown-expand') 31 | } 32 | } 33 | } 34 | 35 | /* 36 | //MTD Dashboard chart 01 37 | var mtd01 = document.getElementById('myChart') 38 | mtd01.height = 200 39 | mtd01.width = 300 40 | var data = { 41 | labels: ['January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December'], 42 | datasets: [{ 43 | fill: false, 44 | label: 'Completed', 45 | borderColor: colorThree, 46 | data: [120, 115, 140, 130, 100, 123, 88, 99, 66, 120, 52, 59], 47 | borderWidth: 2, 48 | lineTension: 0, 49 | }, { 50 | fill: false, 51 | label: 'Issues', 52 | borderColor: colorFour, 53 | data: [66, 44, 90, 12, 48, 99, 56, 78, 23, 100, 22, 47], 54 | borderWidth: 2, 55 | lineTension: 0, 56 | }] 57 | } 58 | 59 | var lineChart = new Chart(mtd01, { 60 | type: 'line', 61 | data: data, 62 | options: { 63 | maintainAspectRatio: false, 64 | bezierCurve: false, 65 | } 66 | }) 67 | 68 | //MTD Dashboard chart 02 69 | var mtd02 = document.getElementById('myChart2') 70 | mtd02.height = 200 71 | mtd02.width = 200 72 | var data = { 73 | labels: ['January', 'February', 'April', 'May', 'June', 'July'], 74 | datasets: [{ 75 | fill: true, 76 | label: 'Completed', 77 | backgroundColor: colorThree, 78 | data: [120, 115, 130, 100, 123, 88], 79 | borderWidth: 2, 80 | lineTension: 0, 81 | }, { 82 | fill: true, 83 | label: 'Issues', 84 | backgroundColor: colorFour, 85 | data: [66, 44, 12, 54, 32, 48], 86 | borderWidth: 2, 87 | lineTension: 0, 88 | }] 89 | } 90 | 91 | var lineChart = new Chart(mtd02, { 92 | type: 'bar', 93 | data: data, 94 | options: { 95 | maintainAspectRatio: false, 96 | bezierCurve: false, 97 | } 98 | }) 99 | */ -------------------------------------------------------------------------------- /mtd/view_all_drivers_delete_modal.php: -------------------------------------------------------------------------------- 1 | 0){ 13 | header("Location: view_all_drivers.php?error=Pending Fines Availabe!"); 14 | } 15 | else { */ 16 | $query = "DELETE FROM driver WHERE license_id ='".$_POST["did"]."'"; 17 | //$message = 'Delete success'; 18 | //$output_del .= 'error 1' ; 19 | //} 20 | } 21 | else 22 | { 23 | $output_del .= 'error 2' ; 24 | } 25 | 26 | 27 | if(mysqli_query($conn, $query)) 28 | { 29 | $output_del .= ''; 30 | $select_query = "SELECT * FROM driver"; 31 | $result = mysqli_query($conn, $select_query); 32 | $output_del .= ' 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | '; 51 | while($row = mysqli_fetch_array($result)) 52 | { 53 | $output_del .= ' 54 | 55 | 60 | 61 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | '; 69 | } 70 | $output_del .= '
ActionLicense IDDriver Full NameLicense Issue DateLicense Expire Date
ActionLicense IDDriver Full NameLicense Issue DateLicense Expire Date
56 | 57 | 58 | 59 | ' . $row["license_id"] . '' . $row["driver_name"] . '' . $row["license_issue_date"] . '' . $row["license_expire_date"] . '
'; 71 | } 72 | echo $output_del; 73 | 74 | ?> -------------------------------------------------------------------------------- /tpo/driver_past_fine_search_form.php: -------------------------------------------------------------------------------- 1 | 6 | 7 |
8 |
9 | Search Driver Past Fines 10 |
11 |
12 |
13 |
14 |
15 | 16 |
17 |
18 | 19 |
20 |
21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 53 | 54 |
Refferance NoProvisionVehicle NoPlaceIssue Date
55 |
56 |
57 |
58 |
59 | 65 | 66 | -------------------------------------------------------------------------------- /admin/add_traffic_officer_action.php: -------------------------------------------------------------------------------- 1 | 0) { 65 | header("Location: add_traffic_officer.php?error=Traffic police officer already exist!"); 66 | exit(); 67 | }else { 68 | $sql2 = "INSERT INTO tpo(police_id, officer_email, officer_password, officer_name, police_station, court, registered_at, code, status) VALUES('$officerid', '$officeremail', '$officerpassword', '$officername', '$policestation', '$tpocourt', NOW(), '0', 'verified')"; 69 | $result2 = mysqli_query($conn, $sql2); 70 | if ($result2) { 71 | header("Location: add_traffic_officer.php?success=Traffic police officer details added successfully"); 72 | exit(); 73 | }else { 74 | header("Location: add_traffic_officer.php?error=Email already exist!"); 75 | exit(); 76 | } 77 | } 78 | } 79 | } else { 80 | echo "submit not set"; 81 | } 82 | 83 | ?> -------------------------------------------------------------------------------- /admin/fine_tickets_edit_modal.php: -------------------------------------------------------------------------------- 1 | ' . $message . ''; 40 | $select_query = "SELECT * FROM driver"; 41 | $result = mysqli_query($conn, $select_query); 42 | $output .= ' 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | '; 62 | while($row = mysqli_fetch_array($result)) 63 | { 64 | $output .= ' 65 | 66 | 71 | 72 | 73 | 74 | 75 | 76 | 77 | 78 | 79 | '; 80 | } 81 | $output .= '
ActionLicense IDDriver Full NameLicense Issue DateLicense Expire Date
ActionLicense IDDriver Full NameLicense Issue DateLicense Expire Date
67 | 68 | 69 | 70 | ' . $row["fine_id"] . '' . $row["fine_amount"] . '' . $row["license_issue_date"] . '' . $row["license_expire_date"] . '
'; 82 | } 83 | echo $output; */ 84 | } 85 | ?> 86 | 87 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # 2.2-Project-Smart-Traffic-Fine-Management-System 2 | 3 | Generally, we know that road traffic violations are occurring while driving on the road. If there is a violation caught by the traffic police officers, they will definitely make a fine according to the violation. So, we know that this process is based on paper works, a manual paying system, and a temporary driver has to hand over the license to a police officer and this process takes more time. Therefore, we have proposed our system to make it smart other than using the normal process. 4 | 5 | The system has major four roles; Traffic Police Admin, Traffic Police Officer, Vehicle Driver, and Department of Motor Traffic. The police officer & vehicle driver has the mobile app & web application, traffic police admin, and department of motor traffic have the web portal.
6 | 7 |
8 | 9 | ## Functionalities 10 | ✔️ User Login
11 | ✔️ User Registration
12 | ✔️ Forgot Password
13 | ✔️ Issuing New Fine
14 | ✔️ Profile Maintenance
15 | ✔️ Fine Payments Through Online Payment Gateway
16 | ✔️ User Views
17 | ✔️ Data Add, Edit, Delete, View Functionalities
18 | ✔️ Table data Search, Sort, Download (as CSV, PDF, Excel) & Print Option
19 | 20 | ## Used Technologies 21 | ✔️ PHP
22 | ✔️ MySQL
23 | ✔️ HTML
24 | ✔️ CSS3
25 | ✔️ JavaScript
26 | ✔️ Bootstrap
27 | ✔️ Java
28 | 29 | ## Used Tools 30 | ✔️ Visual Studio Code
31 | ✔️ Android Studio
32 | 33 | ## Team Members 34 | | Lakshitha Dhyan | Chathura Ranasinghe | Dasuni Udugama | Samitha Wijesekara | 35 | | ------------- | ------------- | ------------- | ------------- | 36 | |
Lakshitha Dhyana
|
Chathura Ranasinghe
|
Dasuni Udugama
|
Samitha Wijesekara
| 37 |
38 | 39 | 40 | ## Web Application Screenshots 41 | 42 |
43 | 44 |
45 | 46 |
47 | 48 |
49 | 50 |
51 | 52 |
53 | 54 |
55 | 56 |
57 | 58 |


59 | 60 | ## Police Officer Mobile Application Screenshots 61 | 62 |


63 | 64 | ## Driver Mobile Application Screenshots 65 | 66 |


67 | -------------------------------------------------------------------------------- /admin/view_all_traffic_officers_edit_modal.php: -------------------------------------------------------------------------------- 1 | ' . $message . ''; 41 | $select_query = "SELECT * FROM tpo"; 42 | $result = mysqli_query($conn, $select_query); 43 | $output .= ' 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | '; 69 | while($row = mysqli_fetch_array($result)) 70 | { 71 | $output .= ' 72 | 73 | 77 | 78 | 79 | 80 | 81 | 82 | 83 | 84 | 85 | 86 | '; 87 | } 88 | $output .= '
ActionTraffic Officer IDTraffic Officer NamePolice StationCourtTraffic Officer EmailRegistered Date
ActionTraffic Officer IDTraffic Officer NamePolice StationCourtTraffic Officer EmailRegistered Date
74 | 75 | 76 | ' . $row["police_id"] . '' . $row["officer_name"] . '' . $row["police_station"] . '' . $row["court"] . '' . $row["officer_email"] . '' . $row["registered_at"] . '
'; 89 | } 90 | echo $output; */ 91 | } 92 | } 93 | ?> 94 | 95 | -------------------------------------------------------------------------------- /admin/view_all_drivers_edit_modal.php: -------------------------------------------------------------------------------- 1 | ' . $message . ''; 52 | $select_query = "SELECT * FROM driver"; 53 | $result = mysqli_query($conn, $select_query); 54 | $output .= ' 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 | 73 | '; 74 | while($row = mysqli_fetch_array($result)) 75 | { 76 | $output .= ' 77 | 78 | 83 | 84 | 85 | 86 | 87 | 88 | 89 | 90 | 91 | '; 92 | } 93 | $output .= '
ActionLicense IDDriver Full NameLicense Issue DateLicense Expire Date
ActionLicense IDDriver Full NameLicense Issue DateLicense Expire Date
79 | 80 | 81 | 82 | ' . $row["license_id"] . '' . $row["driver_name"] . '' . $row["license_issue_date"] . '' . $row["license_expire_date"] . '
'; 94 | } 95 | echo $output; */ 96 | } 97 | ?> 98 | 99 | -------------------------------------------------------------------------------- /mtd/view_all_drivers_edit_modal.php: -------------------------------------------------------------------------------- 1 | ' . $message . ''; 52 | $select_query = "SELECT * FROM driver"; 53 | $result = mysqli_query($conn, $select_query); 54 | $output .= ' 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 | 73 | '; 74 | while($row = mysqli_fetch_array($result)) 75 | { 76 | $output .= ' 77 | 78 | 83 | 84 | 85 | 86 | 87 | 88 | 89 | 90 | 91 | '; 92 | } 93 | $output .= '
ActionLicense IDDriver Full NameLicense Issue DateLicense Expire Date
ActionLicense IDDriver Full NameLicense Issue DateLicense Expire Date
79 | 80 | 81 | 82 | ' . $row["license_id"] . '' . $row["driver_name"] . '' . $row["license_issue_date"] . '' . $row["license_expire_date"] . '
'; 94 | } 95 | echo $output; */ 96 | } 97 | ?> 98 | 99 | -------------------------------------------------------------------------------- /admin/view_all_drivers_view_modal.php: -------------------------------------------------------------------------------- 1 | 11 | '; 12 | while($row = mysqli_fetch_array($result)) 13 | { 14 | $output .= ' 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | '; 49 | } 50 | $output .= ' 51 |
'.$row["license_id"].'
'.$row["driver_name"].'
'.$row["home_address"].'
'.$row["license_issue_date"].'
'.$row["license_expire_date"].'
'.$row["class_of_vehicle"].'
'.$row["registered_at"].'
'.$row["driver_email"].'
52 | 53 | '; 54 | echo $output; 55 | } */ 56 | ?> 57 | 58 | 59 | 60 | 61 | '; 72 | while($row = mysqli_fetch_array($result)) 73 | { 74 | $output .= ' 75 | 76 | License ID 77 | '.$row["license_id"].' 78 | 79 | 80 | 81 | Driver Full Name 82 | '.$row["driver_name"].' 83 | 84 | 85 | 86 | Home Address 87 | '.$row["home_address"].' 88 | 89 | 90 | 91 | License Issue Date 92 | '.$row["license_issue_date"].' 93 | 94 | 95 | 96 | License Expire Date 97 | '.$row["license_expire_date"].' 98 | 99 | 100 | Class of Vehicle 101 | '.$row["class_of_vehicle"].' 102 | 103 | 104 | 105 | Registered Date 106 | '.$row["registered_at"].' 107 | 108 | 109 | 110 | Driver Email 111 | '.$row["driver_email"].' 112 | 113 | 114 | '; 115 | } 116 | $output .= ' 117 | 118 | 119 | '; 120 | echo $output; 121 | } 122 | ?> 123 | 124 | -------------------------------------------------------------------------------- /mtd/view_all_drivers_view_modal.php: -------------------------------------------------------------------------------- 1 | 11 | '; 12 | while($row = mysqli_fetch_array($result)) 13 | { 14 | $output .= ' 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | '; 49 | } 50 | $output .= ' 51 |
'.$row["license_id"].'
'.$row["driver_name"].'
'.$row["home_address"].'
'.$row["license_issue_date"].'
'.$row["license_expire_date"].'
'.$row["class_of_vehicle"].'
'.$row["registered_at"].'
'.$row["driver_email"].'
52 | 53 | '; 54 | echo $output; 55 | } */ 56 | ?> 57 | 58 | 59 | 60 | 61 | '; 72 | while($row = mysqli_fetch_array($result)) 73 | { 74 | $output .= ' 75 | 76 | License ID 77 | '.$row["license_id"].' 78 | 79 | 80 | 81 | Driver Full Name 82 | '.$row["driver_name"].' 83 | 84 | 85 | 86 | Home Address 87 | '.$row["home_address"].' 88 | 89 | 90 | 91 | License Issue Date 92 | '.$row["license_issue_date"].' 93 | 94 | 95 | 96 | License Expire Date 97 | '.$row["license_expire_date"].' 98 | 99 | 100 | Class of Vehicle 101 | '.$row["class_of_vehicle"].' 102 | 103 | 104 | 105 | Registered Date 106 | '.$row["registered_at"].' 107 | 108 | 109 | 110 | Driver Email 111 | '.$row["driver_email"].' 112 | 113 | 114 | '; 115 | } 116 | $output .= ' 117 | 118 | 119 | '; 120 | echo $output; 121 | } 122 | ?> 123 | 124 | -------------------------------------------------------------------------------- /admin/forgot-password.php: -------------------------------------------------------------------------------- 1 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | Forget Password | Traffic Police Admin 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 |
37 | 62 |
63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 76 | 77 | 78 | -------------------------------------------------------------------------------- /user/forgot-password.php: -------------------------------------------------------------------------------- 1 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | Forget Password | Driver 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 |
37 | 62 |
63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 76 | 77 | 78 | -------------------------------------------------------------------------------- /mtd/forgot-password.php: -------------------------------------------------------------------------------- 1 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | Forget Password | Motor Traffic Department 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 |
37 | 62 |
63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 76 | 77 | 78 | -------------------------------------------------------------------------------- /tpo/forgot-password.php: -------------------------------------------------------------------------------- 1 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | Forget Password | Traffic Police Officer 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 |
37 | 62 |
63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 76 | 77 | 78 | 79 | -------------------------------------------------------------------------------- /mtd/add_driver_action.php: -------------------------------------------------------------------------------- 1 | 0) { 87 | header("Location: add_driver.php?error=License ID already exist!"); 88 | exit(); 89 | }else { 90 | 91 | //Insert driver data into database 92 | $sql2 = "INSERT INTO driver(license_id, driver_email, driver_password, driver_name, home_address, license_issue_date, license_expire_date, class_of_vehicle, registered_at, code, status) VALUES('$licenseid', '$driveremail', '$driverpassword', '$drivername', '$homeaddress', '$licenseissuedate', '$licenseexpiredate', '$classofvehicle', NOW(), '0', 'verified')"; 93 | $result2 = mysqli_query($conn, $sql2); 94 | if ($result2) { 95 | header("Location: add_driver.php?success=Added Successfully"); 96 | exit(); 97 | }else { 98 | header("Location: add_driver.php?error=Unknown error occurred!"); 99 | exit(); 100 | } 101 | } 102 | 103 | } 104 | 105 | }else{ 106 | header("Location: add_driver.php"); 107 | exit(); 108 | } 109 | 110 | ?> -------------------------------------------------------------------------------- /assets/vendors/DataTables/dataTables.bootstrap4.min.js: -------------------------------------------------------------------------------- 1 | /*! 2 | DataTables Bootstrap 4 integration 3 | ©2011-2017 SpryMedia Ltd - datatables.net/license 4 | */ 5 | var $jscomp=$jscomp||{};$jscomp.scope={};$jscomp.findInternal=function(a,b,c){a instanceof String&&(a=String(a));for(var e=a.length,d=0;d<'col-sm-12 col-md-6'f>><'row'<'col-sm-12'tr>><'row'<'col-sm-12 col-md-5'i><'col-sm-12 col-md-7'p>>", 12 | renderer:"bootstrap"});a.extend(d.ext.classes,{sWrapper:"dataTables_wrapper dt-bootstrap4",sFilterInput:"form-control form-control-sm",sLengthSelect:"custom-select custom-select-sm form-control form-control-sm",sProcessing:"dataTables_processing card",sPageButton:"paginate_button page-item"});d.ext.renderer.pageButton.bootstrap=function(f,l,A,B,m,t){var u=new d.Api(f),C=f.oClasses,n=f.oLanguage.oPaginate,D=f.oLanguage.oAria.paginate||{},h,k,v=0,y=function(q,w){var x,E=function(p){p.preventDefault(); 13 | a(p.currentTarget).hasClass("disabled")||u.page()==p.data.action||u.page(p.data.action).draw("page")};var r=0;for(x=w.length;r",{"class":C.sPageButton+" "+k,id:0===A&&"string"===typeof g?f.sTableId+"_"+g:null}).append(a("",{href:"#","aria-controls":f.sTableId,"aria-label":D[g],"data-dt-idx":v,tabindex:f.iTabIndex,"class":"page-link"}).html(h)).appendTo(q);f.oApi._fnBindAction(F,{action:g},E);v++}}}};try{var z=a(l).find(c.activeElement).data("dt-idx")}catch(q){}y(a(l).empty().html('
    ').children("ul"),B);z!==e&&a(l).find("[data-dt-idx="+z+"]").trigger("focus")};return d}); -------------------------------------------------------------------------------- /user/new-password.php: -------------------------------------------------------------------------------- 1 | 5 | 6 | 7 | 8 | 9 | 10 | New Password | Driver 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 |
    36 | 64 |
    65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 | 78 | 79 | 80 | -------------------------------------------------------------------------------- /admin/new-password.php: -------------------------------------------------------------------------------- 1 | 5 | 6 | 7 | 8 | 9 | 10 | New Password | Traffic Police Admin 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 |
    36 | 64 |
    65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 | 78 | 79 | 80 | 81 | -------------------------------------------------------------------------------- /tpo/new-password.php: -------------------------------------------------------------------------------- 1 | 5 | 6 | 7 | 8 | 9 | 10 | New Password | Traffic Police Officer 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 |
    36 | 64 |
    65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 | 78 | 79 | 80 | -------------------------------------------------------------------------------- /mtd/new-password.php: -------------------------------------------------------------------------------- 1 | 5 | 6 | 7 | 8 | 9 | 10 | New Password | Motor Traffic Department 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 |
    36 | 64 |
    65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 | 78 | 79 | 80 | -------------------------------------------------------------------------------- /user/verification-code.php: -------------------------------------------------------------------------------- 1 | 5 | 6 | 7 | 8 | 9 | 10 | Verification | Driver 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 |
    36 | 69 |
    70 | 71 | 72 | 73 | 74 | 75 | 76 | 77 | 83 | 84 | 85 | -------------------------------------------------------------------------------- /admin/verification-code.php: -------------------------------------------------------------------------------- 1 | 5 | 6 | 7 | 8 | 9 | 10 | Verification | Traffic Police Admin 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 |
    36 | 68 |
    69 | 70 | 71 | 72 | 73 | 74 | 75 | 76 | 82 | 83 | 84 | -------------------------------------------------------------------------------- /tpo/verification-code.php: -------------------------------------------------------------------------------- 1 | 5 | 6 | 7 | 8 | 9 | 10 | Verification | Traffic Police Officer 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 |
    36 | 68 |
    69 | 70 | 71 | 72 | 73 | 74 | 75 | 76 | 82 | 83 | 84 | -------------------------------------------------------------------------------- /mtd/verification-code.php: -------------------------------------------------------------------------------- 1 | 5 | 6 | 7 | 8 | 9 | 10 | Verification | Motor Traffic Department 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 |
    36 | 69 |
    70 | 71 | 72 | 73 | 74 | 75 | 76 | 77 | 78 | 84 | 85 | 86 | --------------------------------------------------------------------------------