Linux cesa-www-main 6.1.0-49-cloud-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.174-1 (2026-05-26) x86_64
Apache/2.4.68 (Debian)
Server IP : 10.218.0.2 & Your IP : 216.73.216.28
Domains :
Cant Read [ /etc/named.conf ]
User : www-data
Terminal
Auto Root
Create File
Create Folder
Localroot Suggester
Backdoor Destroyer
Readme
/
var /
www /
cesa.co.za /
php /
includes /
Delete
Unzip
Name
Size
Permission
Date
Action
error_handling
[ DIR ]
drwxr-sr-x
2025-07-07 15:54
mail
[ DIR ]
drwxr-sr-x
2025-06-14 11:17
ADQAnswers.php
3.16
KB
-rw-r--r--
2026-06-03 05:55
ADQAudit.php
6.51
KB
-rw-r--r--
2026-06-03 05:55
ADQAuditAnswers.php
1.21
KB
-rw-r--r--
2026-06-03 05:55
ADQFirms.php
18.41
KB
-rw-r--r--
2025-12-31 10:56
ADQuestionnairesAnswers.php
1.05
KB
-rw-r--r--
2026-06-03 05:55
ADQuestionnairesAudit.php
2.01
KB
-rw-r--r--
2026-06-03 05:55
ADecQuestionnaires.php
3.31
KB
-rw-r--r--
2026-06-03 05:55
ADecQuestions.php
541
B
-rw-r--r--
2026-06-03 05:55
ADec_Contacts.php
1.61
KB
-rw-r--r--
2026-06-03 05:55
ADec_OfficeContacts.php
7.43
KB
-rw-r--r--
2026-06-03 05:55
ADec_PIUnderwriters.php
742
B
-rw-r--r--
2026-06-03 05:55
ADec_Transformation.php
817
B
-rw-r--r--
2026-06-03 05:55
ADec_tblMemberFirmOffices.php
1.49
KB
-rw-r--r--
2026-06-03 05:55
ADec_tblMemberFirmSkills.php
2.38
KB
-rw-r--r--
2026-06-03 05:55
ADec_tblMemberFirms.php
19.37
KB
-rw-r--r--
2026-06-03 05:55
AnonRespondees.php
4.25
KB
-rw-r--r--
2026-06-05 11:41
AwardsEntries.php
2.4
KB
-rw-r--r--
2026-06-06 10:48
BaseTableClass.php
950
B
-rw-r--r--
2026-04-26 08:24
BatchJob.php
4.46
KB
-rw-r--r--
2026-06-03 05:55
BceAssignmentFeedbackFormsReportService.php
6.77
KB
-rw-r--r--
2026-05-25 13:06
CCEAssignment.php
12.44
KB
-rw-r--r--
2026-05-26 14:26
CCEAssignmentMarking.php
26.26
KB
-rw-r--r--
2026-08-14 12:06
CCEBooks.php
524
B
-rw-r--r--
2026-06-03 05:55
CCEConvenorAuth.php
3.06
KB
-rw-r--r--
2026-08-19 11:18
CCECourseSchedules.php
579
B
-rw-r--r--
2026-06-03 05:55
CCEDocCategories.php
529
B
-rw-r--r--
2026-06-03 05:55
CCEDocuments.php
8.15
KB
-rw-r--r--
2026-08-20 12:16
CCEExam.php
15.87
KB
-rw-r--r--
2026-06-03 06:35
CCEExamQuestion.php
1.76
KB
-rw-r--r--
2026-06-03 05:55
CCEFacilitatorUser.php
931
B
-rw-r--r--
2026-06-03 05:55
CCEMessageLog.php
951
B
-rw-r--r--
2026-06-03 05:55
CCEMessages.php
8.88
KB
-rw-r--r--
2026-07-01 13:20
CCEModuleMarksService.php
7.16
KB
-rw-r--r--
2026-05-26 10:30
CCEModules.php
1.16
KB
-rw-r--r--
2026-06-03 05:55
CCEResourceGroups.php
591
B
-rw-r--r--
2026-06-03 05:55
CCEResources.php
896
B
-rw-r--r--
2026-06-03 05:55
CCESetup.php
256
B
-rw-r--r--
2026-02-09 16:20
CCEStAssigExtension.php
2.07
KB
-rw-r--r--
2026-06-03 05:55
CCEStAssigExtensionRequest.php
6.65
KB
-rw-r--r--
2026-06-03 05:55
CCEStudentAssignment.php
16.61
KB
-rw-r--r--
2026-07-15 14:44
CCEStudentCourses.php
611
B
-rw-r--r--
2026-06-03 05:55
CCEStudentDisplayOrder.php
4.96
KB
-rw-r--r--
2026-05-26 09:32
CCEStudents.php
8.4
KB
-rw-r--r--
2026-08-19 11:18
CCETemplates.php
896
B
-rw-r--r--
2026-06-03 05:55
CCEWeeklySessions.php
2.27
KB
-rw-r--r--
2026-02-09 16:25
CPDSPReview.php
624
B
-rw-r--r--
2026-06-03 05:55
CPDServiceProvider.php
4.57
KB
-rw-r--r--
2026-06-12 11:48
CPDTrainingMaterial.php
3.96
KB
-rw-r--r--
2026-06-12 11:48
CceUploadedFileService.php
34.9
KB
-rw-r--r--
2026-06-24 12:03
Certificates.php
8.93
KB
-rw-r--r--
2026-08-18 15:42
Contact.php
690
B
-rw-r--r--
2026-06-03 05:55
ErrorLog.php
1.22
KB
-rw-r--r--
2026-08-24 10:12
EventSchedules.php
5.39
KB
-rw-r--r--
2025-12-20 10:03
FileUploads.php
2.1
KB
-rw-r--r--
2026-06-03 05:55
HTMLHelper.php
17.2
KB
-rw-r--r--
2026-06-03 05:55
KeyValue.php
4.9
KB
-rw-r--r--
2026-04-25 09:34
Mailer.php
12.78
KB
-rw-r--r--
2026-07-15 09:50
MarketingAttendees.php
36.87
KB
-rw-r--r--
2026-08-14 12:06
MarketingPayments.php
2.52
KB
-rw-r--r--
2026-06-03 05:55
MemberContact.php
1.04
KB
-rw-r--r--
2026-06-03 05:55
MemberFirm.php
17.71
KB
-rw-r--r--
2026-06-03 05:55
MemberFirmOffices.php
752
B
-rw-r--r--
2026-06-03 05:55
MemberFirmSkill.php
18.04
KB
-rw-r--r--
2026-06-03 05:55
MemberPortalTransformationProxy.php
4.44
KB
-rw-r--r--
2026-05-20 09:08
MemberPortalUrls.php
1.82
KB
-rw-r--r--
2026-05-20 09:53
MsgAttachFileService.php
4.92
KB
-rw-r--r--
2026-06-22 08:37
OfficeContact.php
1.01
KB
-rw-r--r--
2026-06-03 05:55
Picklists.php
539
B
-rw-r--r--
2026-06-03 05:55
Questionnaires.php
849
B
-rw-r--r--
2026-01-23 12:39
SchoolAttendeeBulkMailerService.php
34.26
KB
-rw-r--r--
2026-08-11 10:45
SchoolAttendees.php
73.21
KB
-rw-r--r--
2026-08-11 10:45
SchoolCourses.php
7.98
KB
-rw-r--r--
2026-08-19 11:59
SchoolEvents.php
45.54
KB
-rw-r--r--
2026-08-18 15:42
SchoolPayments.php
4.48
KB
-rw-r--r--
2026-04-13 09:33
SchoolPresenters.php
1.86
KB
-rw-r--r--
2026-01-23 12:43
SchoolWeeksCoursesDashboardProxy.php
10.69
KB
-rw-r--r--
2026-08-14 12:32
TrainingProvider.php
8.06
KB
-rw-r--r--
2026-01-23 12:43
TrainingProviderDoc.php
554
B
-rw-r--r--
2026-06-03 05:55
Transformation.php
10.87
KB
-rw-r--r--
2026-05-13 09:36
UnempPractitioners.php
1.43
KB
-rw-r--r--
2026-06-03 05:55
Utils.php
13.72
KB
-rw-r--r--
2026-07-23 07:28
WeeklySessionsParser.php
7.87
KB
-rw-r--r--
2026-02-09 16:20
cceMessageAttachmentUpload.inc.php
5.12
KB
-rw-r--r--
2026-06-03 05:55
cceMessageEditor.inc.php
9.26
KB
-rw-r--r--
2026-07-01 13:20
cce_file_download_endpoint.php
1.75
KB
-rw-r--r--
2026-06-24 08:38
cstUnreadMessages.php
2.1
KB
-rw-r--r--
2026-07-01 13:20
cstWeeksCourses.php
1.84
KB
-rw-r--r--
2026-08-14 12:06
load_phpmailer.php
742
B
-rw-r--r--
2026-07-17 14:57
maill.php
19.45
KB
-rw-r--r--
2026-08-19 12:23
require_ewmysql.php
1.2
KB
-rw-r--r--
2026-08-24 10:12
sqlFunctions.php
10.48
KB
-rw-r--r--
2026-08-24 10:12
Save
Rename
<?php include_once('BaseTableClass.php'); class TrainingProvider extends BaseTableClass { public function checkCreateTable() { $tableCreateSQL = "DROP TABLE IF EXISTS `TrainingProviders`; CREATE TABLE IF NOT EXISTS `TrainingProviders` ( `ProviderID` int(11) NOT NULL AUTO_INCREMENT, `CompanyName` varchar(255) DEFAULT NULL, `ContactTitle` varchar(255) DEFAULT NULL, `ContactInitials` varchar(255) DEFAULT NULL, `ContactFirstName` varchar(255) DEFAULT NULL, `ContactSurname` varchar(255) DEFAULT NULL, `Designation` varchar(255) DEFAULT NULL, `IDNumber` varchar(255) DEFAULT NULL, `PhoneNumber` varchar(255) DEFAULT NULL, `MobileNumber` varchar(255) DEFAULT NULL, `FaxNumber` varchar(255) DEFAULT NULL, `EmailAddress` varchar(255) DEFAULT NULL, `Password` varchar(255) DEFAULT NULL, `PhysicalAddress1` varchar(255) DEFAULT NULL, `PhysicalAddress2` varchar(255) DEFAULT NULL, `PhysicalCity` varchar(255) DEFAULT NULL, `PhysicalCode` varchar(255) DEFAULT NULL, `PhysicalProvince` varchar(255) DEFAULT NULL, `PhysicalCountry` varchar(255) DEFAULT NULL, `PostalAddress1` varchar(255) DEFAULT NULL, `PostalAddress2` varchar(255) DEFAULT NULL, `PostalCity` varchar(255) DEFAULT NULL, `PostalCode` varchar(255) DEFAULT NULL, `PostalProvince` varchar(255) DEFAULT NULL, `PostalCountry` varchar(255) DEFAULT NULL, `Website` varchar(255) DEFAULT NULL, `CompanyRegNo` varchar(255) DEFAULT NULL, `VATNumber` varchar(255) DEFAULT NULL, `BBBEELevel` varchar(255) DEFAULT NULL, `CSDNo` varchar(255) DEFAULT NULL, `Reference1Company` varchar(255) DEFAULT NULL, `Reference1Contact` varchar(255) DEFAULT NULL, `Reference1Cell` varchar(255) DEFAULT NULL, `Reference1Email` varchar(255) DEFAULT NULL, `Reference2Company` varchar(255) DEFAULT NULL, `Reference2Contact` varchar(255) DEFAULT NULL, `Reference2Cell` varchar(255) DEFAULT NULL, `Reference2Email` varchar(255) DEFAULT NULL, `Reference3Company` varchar(255) DEFAULT NULL, `Reference3Contact` varchar(255) DEFAULT NULL, `Reference3Cell` varchar(255) DEFAULT NULL, `Reference3Email` varchar(255) DEFAULT NULL, `InterestWebinar` char(1) DEFAULT NULL, `InterestClassroom` char(1) DEFAULT NULL, `InterestVideo` char(1) DEFAULT NULL, `InterestPublications` char(1) DEFAULT NULL, `DateUpdated` datetime DEFAULT NULL, `UpdatedBy` varchar(255) DEFAULT NULL, `Archived` tinyint(1) NOT NULL DEFAULT 0, PRIMARY KEY (`ProviderID`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb3 COLLATE=utf8mb3_general_ci; -- -- Triggers `TrainingProviders` -- DROP TRIGGER IF EXISTS `trg_TrainingProviders_after_delete`; DELIMITER $$ CREATE TRIGGER `trg_TrainingProviders_after_delete` AFTER DELETE ON `TrainingProviders` FOR EACH ROW BEGIN INSERT INTO ErrorLog (errmessage, is_info, must_report, created_at, updated_at) VALUES ( CONCAT('Training Provider record deleted: ProviderID: ', OLD.`ProviderID`, '; ContactFirstName: ', OLD.`ContactFirstName`, '; ContactTitle: ', OLD.`ContactTitle`, '; ContactInitials: ', OLD.`ContactInitials`, '; ContactFirstName: ', OLD.`ContactFirstName`, '; ContactSurname: ', OLD.`ContactSurname`, '; IDNumber: ', OLD.`IDNumber`, '; MobileNumber: ', OLD.`MobileNumber`, '; EmailAddress: ', OLD.`EmailAddress`), 1, 1, NOW(), NOW() );"; } /** * Find training provider by company name * @param string $companyName * @return array|false */ public function findByCompanyName($companyName) { global $conni; $companyName = mysqli_real_escape_string($conni, $companyName); $sql = "SELECT * FROM TrainingProviders WHERE CompanyName = '" . $companyName . "' AND (Archived = 0 OR Archived IS NULL) LIMIT 1"; return $this->sqlf->getRow($sql); } /** * Get select list array for training providers * @return array */ public function getSelectList() { $sql = "SELECT ProviderID, CompanyName FROM TrainingProviders WHERE (Archived = 0 OR Archived IS NULL) ORDER BY CompanyName"; $result = $this->sqlf->getAll($sql); $trainingProviders = array(); if (is_array($result)) { foreach ($result as $row) { $trainingProviders[$row['CompanyName']] = $row['ProviderID']; } } return $trainingProviders; } } function trainingProviderListOptionsLoad(&$objThis) { // Add custom column for documents $objThis->ListOptions->Add("documentSummary"); $objThis->ListOptions->Items["documentSummary"]->CssClass = "text-nowrap"; $objThis->ListOptions->Items["documentSummary"]->Visible = true; } function trainingProviderListOptionsRendering(&$objThis) { global $sqlf, $TrainingProviders; // TODO: Print the properties of the $objThis->ProviderID object // echo '<pre>'; // print_r($TrainingProviders->ProviderID); // echo '</pre>'; $docString = ''; if ($TrainingProviders->ProviderID->CurrentValue > 0) { $trainingProviderDocObj = new TrainingProviderDoc($sqlf); $trainingProviderBEEDocs = $trainingProviderDocObj->getByProviderID($TrainingProviders->ProviderID->CurrentValue, 'B-BBEE certificate'); if (is_array($trainingProviderBEEDocs) && count($trainingProviderBEEDocs) > 0) { if (strlen($trainingProviderBEEDocs[0]['DateIssued']) > 0 && strlen($trainingProviderBEEDocs[0]['DocFile']) > 0) { $docDateIssued = new DateTime($trainingProviderBEEDocs[0]['DateIssued']); $docString = '<span class="phpmaker"><a href="/echasl23/providerdocs/' . $trainingProviderBEEDocs[0]['DocFile'] . '" target="_blank">' . $trainingProviderBEEDocs[0]['DocType'] . ' (' . $docDateIssued->format('d-m-Y') . ')</a></span>'; $docString = $docDateIssued->format('d-m-Y'); } else { $docString = 'No B-BBEE date issued'; } } else { $docString = 'No B-BBEE doc found'; } } $objThis->ListOptions->Items["documentSummary"]->Body = $docString // . "<button type='button' class='btn btn-primary btn-sm' // onclick='showDocs(\"" . $TrainingProviders->ProviderID->CurrentValue . "\")'><i class='fas fa-file-alt'></i> // View Docs</button>" ; } function trainingProviderListPageHead(&$objThis) { // Add modal HTML ?> <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-QWTKZyjpPEjISv5WaRU9OFeRpok6YctnYmDr5pNlyT2bRjXh0JMhjY6hW+ALEwIH" crossorigin="anonymous"> <script src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-YvpcrYf0tY3lHB60NNkmXc5s9fDVZLESaAA55NDzOxhy9GkcIdslK1eN7N6jIeHz" crossorigin="anonymous"></script> <div class="modal fade" id="docsModal" tabindex="-1" role="dialog" style="display: none;"> <div class="modal-dialog modal-lg" role="document"> <div class="modal-content"> <div class="modal-header"> <h5 class="modal-title">Training Provider Documents</h5> <button type="button" class="close" data-dismiss="modal" aria-label="Close"> <span aria-hidden="true">×</span> </button> </div> <div class="modal-body" id="docsContent"> Loading... </div> </div> </div> </div> <?php } function trainingProviderListPageFooter(&$objThis) { // Add JavaScript for handling the modal ?> <script> function showDocs(id) { $('#docsModal').modal('show'); $.ajax({ url: '/echasl23/ajax/get_provider_docs.php', type: 'POST', data: { provider_id: id }, success: function(response) { $('#docsContent').html(response); }, error: function() { $('#docsContent').html('Error loading documents'); } }); } </script> <?php }