���� JFIF �� � ( %"1"%)+...383,7(-.-
![]() Server : Apache/2.4.6 (CentOS) OpenSSL/1.0.2k-fips PHP/7.4.20 System : Linux st2.domain.com 3.10.0-1127.10.1.el7.x86_64 #1 SMP Wed Jun 3 14:28:03 UTC 2020 x86_64 User : apache ( 48) PHP Version : 7.4.20 Disable Function : NONE Directory : /var/www/html/adimi/application/modules/dashboard/controllers/ |
<?php defined('BASEPATH') or exit('No direct script access allowed'); class Data_synchronizer extends MX_Controller { public function __construct() { parent::__construct(); $this->load->library(array( 'synchronizer/SyncData', 'synchronizer/SyncManager', )); $this->load->model(array('synchronizer_model')); $this->auth->check_user_auth(); } public function form($id = null) { $this->permission->check_label('backup_and_restore')->update()->redirect(); $data['title'] = display('ftp_setting'); #----------------------------------# $this->form_validation->set_rules('hostname', display('hostname'), 'required|max_length[100]'); $this->form_validation->set_rules('username', display('username'), 'required|max_length[100]'); $this->form_validation->set_rules('password', display('password'), 'required|max_length[100]'); $this->form_validation->set_rules('port', display('ftp_port'), 'required|max_length[5]|numeric'); $this->form_validation->set_rules('debug', display('ftp_debug'), 'required|max_length[100]'); $this->form_validation->set_rules('project_root', display('project_root'), 'required|max_length[100]'); #----------------------------------# $data['ftp'] = (object)$ftpData = array( 'hostname' => $this->input->post('hostname',TRUE), 'username' => $this->input->post('username',TRUE), 'password' => $this->input->post('password'), 'port' => $this->input->post('port',TRUE), 'debug' => $this->input->post('debug',TRUE), 'project_root' => $this->input->post('project_root',FALSE), ); #----------------------------------# if ($this->form_validation->run()) { //already exists if ($this->synchronizer_model->check_exists()) { if ($this->synchronizer_model->update($ftpData)) { $this->session->set_flashdata('message', display('update_successfully')); } else { $this->session->set_flashdata('exception', display('please_try_again')); } } else { if ($this->synchronizer_model->create($ftpData)) { $this->session->set_flashdata('message', display('save_successfully')); } else { $this->session->set_flashdata('exception', display('please_try_again')); } } redirect('dashboard/data_synchronizer/form'); } else { $data['module'] = "dashboard"; $data['page'] = "synchronizer/setting"; if ($this->synchronizer_model->check_exists()) $data['ftp'] = $this->synchronizer_model->read(); echo Modules::run('template/layout', $data); } } public function synchronize() { $this->permission->check_label('backup_and_restore')->read()->redirect(); $data['title'] = display('data_synchronize'); $data['module'] = "dashboard"; $data['page'] = "synchronizer/synchronizer"; $data['internet'] = $this->checkConnection(); $data['incoming'] = $this->checkIncoming(); $data['outgoing'] = $this->checkOutgoing(); echo Modules::run('template/layout', $data); } public function ftp_upload() { $this->permission->check_label('backup_and_restore')->update()->redirect(); if ($this->synchronizer_model->check_exists()) { $ftp = $this->synchronizer_model->read(); $config = array( 'hostname' => $ftp->hostname, 'username' => $ftp->username, 'password' => $ftp->password, 'port' => $ftp->port, 'debug' => $ftp->debug, 'project_root' => $ftp->project_root ); if ($this->syncmanager->upload($config)) { $data['success'] = display('upload_successfully'); } else { $data['error'] = display('unable_to_upload_file_please_check_configuration'); } } else { $data['error'] = display('please_configure_synchronizer_settings'); } echo json_encode($data); } public function ftp_download() { $this->permission->check_label('backup_and_restore')->update()->redirect(); if (!$this->checkIncoming()) { if ($this->synchronizer_model->check_exists()) { $ftp = $this->synchronizer_model->read(); $config = array( 'hostname' => $ftp->hostname, 'username' => $ftp->username, 'password' => $ftp->password, 'port' => $ftp->port, 'debug' => $ftp->debug, 'project_root' => $ftp->project_root ); if ($this->syncmanager->download($config)) { $data['success'] = display('download_successfully'); } else { $data['error'] = display('unable_to_download_file_please_check_configuration'); } } else { $data['error'] = display('please_configure_synchronizer_settings'); } } else { $data['error'] = display('data_import_first'); } echo json_encode($data); } public function import() { if ($this->checkIncoming()) { if ($this->syncdata->importSQL()) { $data['success'] = display('data_import_successfully'); } else { $data['error'] = display('unable_to_import_data_please_check_config_or_sql_file'); } } else { $data['error'] = display('download_data_from_server'); } echo json_encode($data); } public function checkConnection() { if ($pf = @fsockopen("google.com", 80)) { return true; fclose($pf); } else { return false; } } public function checkIncoming() { if (file_exists('./assets/data/incoming/backup.sql')) { return true; } else { return false; } } public function checkOutgoing() { if (file_exists('./assets/data/outgoing/backup.sql')) { return true; } else { return false; } } }