mirror of
				https://github.com/usmannasir/cyberpanel.git
				synced 2025-11-03 20:05:58 +01:00 
			
		
		
		
	
		
			
				
	
	
		
			1469 lines
		
	
	
		
			40 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			1469 lines
		
	
	
		
			40 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
/**
 | 
						|
 * Created by usman on 8/1/17.
 | 
						|
 */
 | 
						|
 | 
						|
var emailListURL = "/emailMarketing/" + $("#domainNamePage").text() + "/emailLists";
 | 
						|
$("#emailLists").attr("href", emailListURL);
 | 
						|
$("#emailListsChild").attr("href", emailListURL);
 | 
						|
 | 
						|
var manageListsURL = "/emailMarketing/" + $("#domainNamePage").text() + "/manageLists";
 | 
						|
$("#manageLists").attr("href", manageListsURL);
 | 
						|
$("#manageListsChild").attr("href", manageListsURL);
 | 
						|
 | 
						|
var sendEmailsURL = "/emailMarketing/sendEmails";
 | 
						|
$("#sendEmailsPage").attr("href", sendEmailsURL);
 | 
						|
$("#sendEmailsPageChild").attr("href", sendEmailsURL);
 | 
						|
 | 
						|
var composeEmailURL = "/emailMarketing/composeEmailMessage";
 | 
						|
$("#composeEmails").attr("href", composeEmailURL);
 | 
						|
$("#composeEmailsChild").attr("href", composeEmailURL);
 | 
						|
 | 
						|
var smtpHostsURL = "/emailMarketing/" + $("#domainNamePage").text() + "/manageSMTP";
 | 
						|
$("#manageSMTPHosts").attr("href", smtpHostsURL);
 | 
						|
$("#manageSMTPHostsChild").attr("href", smtpHostsURL);
 | 
						|
 | 
						|
 | 
						|
app.controller('emailMarketing', function ($scope, $http) {
 | 
						|
 | 
						|
    $scope.cyberPanelLoading = true;
 | 
						|
    $scope.fetchUsers = function () {
 | 
						|
        $scope.cyberPanelLoading = false;
 | 
						|
 | 
						|
        url = "/emailMarketing/fetchUsers";
 | 
						|
 | 
						|
        var data = {};
 | 
						|
 | 
						|
        var config = {
 | 
						|
            headers: {
 | 
						|
                'X-CSRFToken': getCookie('csrftoken')
 | 
						|
            }
 | 
						|
        };
 | 
						|
 | 
						|
        $http.post(url, data, config).then(ListInitialDatas, cantLoadInitialDatas);
 | 
						|
 | 
						|
 | 
						|
        function ListInitialDatas(response) {
 | 
						|
            $scope.cyberPanelLoading = true;
 | 
						|
 | 
						|
            if (response.data.status === 1) {
 | 
						|
                $scope.users = JSON.parse(response.data.data);
 | 
						|
            } else {
 | 
						|
                new PNotify({
 | 
						|
                    title: 'Operation Failed!',
 | 
						|
                    text: response.data.error_message,
 | 
						|
                    type: 'error'
 | 
						|
                });
 | 
						|
            }
 | 
						|
        }
 | 
						|
 | 
						|
        function cantLoadInitialDatas(response) {
 | 
						|
            $scope.cyberPanelLoading = false;
 | 
						|
            new PNotify({
 | 
						|
                title: 'Operation Failed!',
 | 
						|
                text: 'Could not connect to server, please refresh this page',
 | 
						|
                type: 'error'
 | 
						|
            });
 | 
						|
 | 
						|
        }
 | 
						|
 | 
						|
    };
 | 
						|
    $scope.fetchUsers();
 | 
						|
    $scope.enableDisableMarketing = function (status, userName) {
 | 
						|
        $scope.cyberPanelLoading = false;
 | 
						|
 | 
						|
        url = "/emailMarketing/enableDisableMarketing";
 | 
						|
 | 
						|
        var data = {userName: userName};
 | 
						|
 | 
						|
        var config = {
 | 
						|
            headers: {
 | 
						|
                'X-CSRFToken': getCookie('csrftoken')
 | 
						|
            }
 | 
						|
        };
 | 
						|
 | 
						|
        $http.post(url, data, config).then(ListInitialDatas, cantLoadInitialDatas);
 | 
						|
 | 
						|
 | 
						|
        function ListInitialDatas(response) {
 | 
						|
            $scope.cyberPanelLoading = true;
 | 
						|
            $scope.fetchUsers();
 | 
						|
 | 
						|
            if (response.data.status === 1) {
 | 
						|
                new PNotify({
 | 
						|
                    title: 'Success!',
 | 
						|
                    text: 'Changes successfully saved.',
 | 
						|
                    type: 'success'
 | 
						|
                });
 | 
						|
            } else {
 | 
						|
                new PNotify({
 | 
						|
                    title: 'Operation Failed!',
 | 
						|
                    text: response.data.error_message,
 | 
						|
                    type: 'error'
 | 
						|
                });
 | 
						|
            }
 | 
						|
        }
 | 
						|
 | 
						|
        function cantLoadInitialDatas(response) {
 | 
						|
            $scope.cyberPanelLoading = false;
 | 
						|
            new PNotify({
 | 
						|
                title: 'Operation Failed!',
 | 
						|
                text: 'Could not connect to server, please refresh this page',
 | 
						|
                type: 'error'
 | 
						|
            });
 | 
						|
 | 
						|
        }
 | 
						|
 | 
						|
    };
 | 
						|
});
 | 
						|
 | 
						|
app.controller('createEmailList', function ($scope, $http, $timeout) {
 | 
						|
 | 
						|
    $scope.installationDetailsForm = false;
 | 
						|
    $scope.installationProgress = true;
 | 
						|
    $scope.cyberPanelLoading = true;
 | 
						|
    $scope.goBackDisable = true;
 | 
						|
 | 
						|
    var statusFile;
 | 
						|
    var path;
 | 
						|
 | 
						|
 | 
						|
    $scope.goBack = function () {
 | 
						|
        $scope.installationDetailsForm = false;
 | 
						|
        $scope.installationProgress = true;
 | 
						|
        $scope.cyberPanelLoading = true;
 | 
						|
        $scope.goBackDisable = true;
 | 
						|
        $("#installProgress").css("width", "0%");
 | 
						|
    };
 | 
						|
 | 
						|
    $scope.createEmailList = function () {
 | 
						|
 | 
						|
        $scope.installationDetailsForm = true;
 | 
						|
        $scope.installationProgress = false;
 | 
						|
        $scope.cyberPanelLoading = false;
 | 
						|
        $scope.goBackDisable = true;
 | 
						|
        $scope.currentStatus = "Starting to load email addresses..";
 | 
						|
 | 
						|
 | 
						|
        url = "/emailMarketing/submitEmailList";
 | 
						|
 | 
						|
        var data = {
 | 
						|
            domain: $("#domainNamePage").text(),
 | 
						|
            path: $scope.path,
 | 
						|
            listName: $scope.listName
 | 
						|
        };
 | 
						|
 | 
						|
        var config = {
 | 
						|
            headers: {
 | 
						|
                'X-CSRFToken': getCookie('csrftoken')
 | 
						|
            }
 | 
						|
        };
 | 
						|
 | 
						|
        $http.post(url, data, config).then(ListInitialDatas, cantLoadInitialDatas);
 | 
						|
 | 
						|
 | 
						|
        function ListInitialDatas(response) {
 | 
						|
 | 
						|
            if (response.data.status === 1) {
 | 
						|
                statusFile = response.data.tempStatusPath;
 | 
						|
                getInstallStatus();
 | 
						|
            } else {
 | 
						|
 | 
						|
                $scope.installationDetailsForm = true;
 | 
						|
                $scope.cyberPanelLoading = true;
 | 
						|
                $scope.goBackDisable = false;
 | 
						|
 | 
						|
                new PNotify({
 | 
						|
                    title: 'Operation Failed!',
 | 
						|
                    text: response.data.error_message,
 | 
						|
                    type: 'error'
 | 
						|
                });
 | 
						|
 | 
						|
            }
 | 
						|
 | 
						|
        }
 | 
						|
 | 
						|
        function cantLoadInitialDatas(response) {
 | 
						|
            $scope.cyberPanelLoading = true;
 | 
						|
            new PNotify({
 | 
						|
                title: 'Operation Failed!',
 | 
						|
                text: 'Could not connect to server, please refresh this page',
 | 
						|
                type: 'error'
 | 
						|
            });
 | 
						|
 | 
						|
        }
 | 
						|
 | 
						|
    };
 | 
						|
 | 
						|
    function getInstallStatus() {
 | 
						|
 | 
						|
        url = "/websites/installWordpressStatus";
 | 
						|
 | 
						|
        var data = {
 | 
						|
            statusFile: statusFile,
 | 
						|
            domainName: $("#domainNamePage").text()
 | 
						|
        };
 | 
						|
 | 
						|
        var config = {
 | 
						|
            headers: {
 | 
						|
                'X-CSRFToken': getCookie('csrftoken')
 | 
						|
            }
 | 
						|
        };
 | 
						|
 | 
						|
 | 
						|
        $http.post(url, data, config).then(ListInitialDatas, cantLoadInitialDatas);
 | 
						|
 | 
						|
 | 
						|
        function ListInitialDatas(response) {
 | 
						|
 | 
						|
 | 
						|
            if (response.data.abort === 1) {
 | 
						|
 | 
						|
                if (response.data.installStatus === 1) {
 | 
						|
 | 
						|
                    $scope.installationDetailsForm = true;
 | 
						|
                    $scope.installationProgress = false;
 | 
						|
                    $scope.cyberPanelLoading = true;
 | 
						|
                    $scope.goBackDisable = false;
 | 
						|
                    $scope.currentStatus = 'Emails successfully loaded.';
 | 
						|
                    $timeout.cancel();
 | 
						|
 | 
						|
                } else {
 | 
						|
 | 
						|
                    $scope.installationDetailsForm = true;
 | 
						|
                    $scope.installationProgress = false;
 | 
						|
                    $scope.cyberPanelLoading = true;
 | 
						|
                    $scope.goBackDisable = false;
 | 
						|
                    $scope.currentStatus = response.data.error_message;
 | 
						|
 | 
						|
 | 
						|
                }
 | 
						|
 | 
						|
            } else {
 | 
						|
                $scope.installPercentage = response.data.installationProgress;
 | 
						|
                $scope.currentStatus = response.data.currentStatus;
 | 
						|
 | 
						|
                $timeout(getInstallStatus, 1000);
 | 
						|
            }
 | 
						|
 | 
						|
        }
 | 
						|
 | 
						|
        function cantLoadInitialDatas(response) {
 | 
						|
            $scope.cyberPanelLoading = true;
 | 
						|
            new PNotify({
 | 
						|
                title: 'Operation Failed!',
 | 
						|
                text: 'Could not connect to server, please refresh this page',
 | 
						|
                type: 'error'
 | 
						|
            });
 | 
						|
 | 
						|
 | 
						|
        }
 | 
						|
 | 
						|
 | 
						|
    }
 | 
						|
 | 
						|
    $scope.fetchEmails = function () {
 | 
						|
        $scope.cyberPanelLoading = false;
 | 
						|
 | 
						|
        url = "/emailMarketing/fetchEmails";
 | 
						|
 | 
						|
        var data = {'listName': $scope.listName};
 | 
						|
 | 
						|
        var config = {
 | 
						|
            headers: {
 | 
						|
                'X-CSRFToken': getCookie('csrftoken')
 | 
						|
            }
 | 
						|
        };
 | 
						|
 | 
						|
        $http.post(url, data, config).then(ListInitialDatas, cantLoadInitialDatas);
 | 
						|
 | 
						|
 | 
						|
        function ListInitialDatas(response) {
 | 
						|
            $scope.cyberPanelLoading = true;
 | 
						|
 | 
						|
            if (response.data.status === 1) {
 | 
						|
                $scope.records = JSON.parse(response.data.data);
 | 
						|
            } else {
 | 
						|
                new PNotify({
 | 
						|
                    title: 'Operation Failed!',
 | 
						|
                    text: response.data.error_message,
 | 
						|
                    type: 'error'
 | 
						|
                });
 | 
						|
            }
 | 
						|
        }
 | 
						|
 | 
						|
        function cantLoadInitialDatas(response) {
 | 
						|
            $scope.cyberPanelLoading = false;
 | 
						|
            new PNotify({
 | 
						|
                title: 'Operation Failed!',
 | 
						|
                text: 'Could not connect to server, please refresh this page',
 | 
						|
                type: 'error'
 | 
						|
            });
 | 
						|
 | 
						|
        }
 | 
						|
 | 
						|
    };
 | 
						|
 | 
						|
 | 
						|
});
 | 
						|
 | 
						|
app.controller('manageEmailLists', function ($scope, $http, $timeout) {
 | 
						|
 | 
						|
    $scope.installationDetailsForm = true;
 | 
						|
    $scope.installationProgress = true;
 | 
						|
    $scope.cyberPanelLoading = true;
 | 
						|
    $scope.goBackDisable = true;
 | 
						|
    $scope.verificationStatus = true;
 | 
						|
 | 
						|
    var statusFile;
 | 
						|
    var path;
 | 
						|
 | 
						|
 | 
						|
    $scope.goBack = function () {
 | 
						|
        $scope.installationDetailsForm = false;
 | 
						|
        $scope.installationProgress = true;
 | 
						|
        $scope.cyberPanelLoading = true;
 | 
						|
        $scope.goBackDisable = true;
 | 
						|
        $("#installProgress").css("width", "0%");
 | 
						|
    };
 | 
						|
 | 
						|
    $scope.createEmailList = function () {
 | 
						|
 | 
						|
        $scope.installationDetailsForm = true;
 | 
						|
        $scope.installationProgress = false;
 | 
						|
        $scope.cyberPanelLoading = false;
 | 
						|
        $scope.goBackDisable = true;
 | 
						|
        $scope.currentStatus = "Starting to load email addresses..";
 | 
						|
 | 
						|
 | 
						|
        url = "/emailMarketing/submitEmailList";
 | 
						|
 | 
						|
        var data = {
 | 
						|
            domain: $("#domainNamePage").text(),
 | 
						|
            path: $scope.path,
 | 
						|
            listName: $scope.listName
 | 
						|
        };
 | 
						|
 | 
						|
        var config = {
 | 
						|
            headers: {
 | 
						|
                'X-CSRFToken': getCookie('csrftoken')
 | 
						|
            }
 | 
						|
        };
 | 
						|
 | 
						|
        $http.post(url, data, config).then(ListInitialDatas, cantLoadInitialDatas);
 | 
						|
 | 
						|
 | 
						|
        function ListInitialDatas(response) {
 | 
						|
 | 
						|
            if (response.data.status === 1) {
 | 
						|
                statusFile = response.data.tempStatusPath;
 | 
						|
                getInstallStatus();
 | 
						|
            } else {
 | 
						|
 | 
						|
                $scope.installationDetailsForm = true;
 | 
						|
                $scope.cyberPanelLoading = true;
 | 
						|
                $scope.goBackDisable = false;
 | 
						|
 | 
						|
                new PNotify({
 | 
						|
                    title: 'Operation Failed!',
 | 
						|
                    text: response.data.error_message,
 | 
						|
                    type: 'error'
 | 
						|
                });
 | 
						|
 | 
						|
            }
 | 
						|
 | 
						|
        }
 | 
						|
 | 
						|
        function cantLoadInitialDatas(response) {
 | 
						|
            $scope.cyberPanelLoading = true;
 | 
						|
            new PNotify({
 | 
						|
                title: 'Operation Failed!',
 | 
						|
                text: 'Could not connect to server, please refresh this page',
 | 
						|
                type: 'error'
 | 
						|
            });
 | 
						|
 | 
						|
        }
 | 
						|
 | 
						|
    };
 | 
						|
 | 
						|
    function getInstallStatus() {
 | 
						|
 | 
						|
        url = "/websites/installWordpressStatus";
 | 
						|
 | 
						|
        var data = {
 | 
						|
            statusFile: statusFile,
 | 
						|
            domainName: $("#domainNamePage").text()
 | 
						|
        };
 | 
						|
 | 
						|
        var config = {
 | 
						|
            headers: {
 | 
						|
                'X-CSRFToken': getCookie('csrftoken')
 | 
						|
            }
 | 
						|
        };
 | 
						|
 | 
						|
 | 
						|
        $http.post(url, data, config).then(ListInitialDatas, cantLoadInitialDatas);
 | 
						|
 | 
						|
 | 
						|
        function ListInitialDatas(response) {
 | 
						|
 | 
						|
 | 
						|
            if (response.data.abort === 1) {
 | 
						|
 | 
						|
                if (response.data.installStatus === 1) {
 | 
						|
 | 
						|
                    $scope.installationDetailsForm = true;
 | 
						|
                    $scope.installationProgress = false;
 | 
						|
                    $scope.cyberPanelLoading = true;
 | 
						|
                    $scope.goBackDisable = false;
 | 
						|
                    $scope.currentStatus = 'Emails successfully loaded.';
 | 
						|
                    $timeout.cancel();
 | 
						|
 | 
						|
                } else {
 | 
						|
 | 
						|
                    $scope.installationDetailsForm = true;
 | 
						|
                    $scope.installationProgress = false;
 | 
						|
                    $scope.cyberPanelLoading = true;
 | 
						|
                    $scope.goBackDisable = false;
 | 
						|
                    $scope.currentStatus = response.data.error_message;
 | 
						|
 | 
						|
 | 
						|
                }
 | 
						|
 | 
						|
            } else {
 | 
						|
                $scope.installPercentage = response.data.installationProgress;
 | 
						|
                $scope.currentStatus = response.data.currentStatus;
 | 
						|
 | 
						|
                $timeout(getInstallStatus, 1000);
 | 
						|
            }
 | 
						|
 | 
						|
        }
 | 
						|
 | 
						|
        function cantLoadInitialDatas(response) {
 | 
						|
            $scope.cyberPanelLoading = true;
 | 
						|
            new PNotify({
 | 
						|
                title: 'Operation Failed!',
 | 
						|
                text: 'Could not connect to server, please refresh this page',
 | 
						|
                type: 'error'
 | 
						|
            });
 | 
						|
 | 
						|
 | 
						|
        }
 | 
						|
 | 
						|
 | 
						|
    }
 | 
						|
 | 
						|
 | 
						|
    ///
 | 
						|
 | 
						|
    $scope.currentRecords = true;
 | 
						|
 | 
						|
    $scope.recordstoShow = 50;
 | 
						|
    var globalPage;
 | 
						|
 | 
						|
    $scope.fetchRecords = function () {
 | 
						|
        $scope.fetchEmails(globalPage);
 | 
						|
    };
 | 
						|
 | 
						|
    $scope.fetchEmails = function (page) {
 | 
						|
        globalPage = page;
 | 
						|
        listVerificationStatus();
 | 
						|
 | 
						|
        $scope.cyberPanelLoading = false;
 | 
						|
 | 
						|
        url = "/emailMarketing/fetchEmails";
 | 
						|
 | 
						|
        var data = {
 | 
						|
            'listName': $scope.listName,
 | 
						|
            'recordstoShow': $scope.recordstoShow,
 | 
						|
            'page': page
 | 
						|
 | 
						|
        };
 | 
						|
 | 
						|
        var config = {
 | 
						|
            headers: {
 | 
						|
                'X-CSRFToken': getCookie('csrftoken')
 | 
						|
            }
 | 
						|
        };
 | 
						|
 | 
						|
        $http.post(url, data, config).then(ListInitialDatas, cantLoadInitialDatas);
 | 
						|
 | 
						|
 | 
						|
        function ListInitialDatas(response) {
 | 
						|
            $scope.cyberPanelLoading = true;
 | 
						|
 | 
						|
            if (response.data.status === 1) {
 | 
						|
                $scope.currentRecords = false;
 | 
						|
                $scope.records = JSON.parse(response.data.data);
 | 
						|
                $scope.pagination = response.data.pagination;
 | 
						|
                $scope.verificationButton = false;
 | 
						|
            } else {
 | 
						|
                new PNotify({
 | 
						|
                    title: 'Operation Failed!',
 | 
						|
                    text: response.data.error_message,
 | 
						|
                    type: 'error'
 | 
						|
                });
 | 
						|
            }
 | 
						|
        }
 | 
						|
 | 
						|
        function cantLoadInitialDatas(response) {
 | 
						|
            $scope.cyberPanelLoading = false;
 | 
						|
            new PNotify({
 | 
						|
                title: 'Operation Failed!',
 | 
						|
                text: 'Could not connect to server, please refresh this page',
 | 
						|
                type: 'error'
 | 
						|
            });
 | 
						|
 | 
						|
        }
 | 
						|
 | 
						|
    };
 | 
						|
 | 
						|
    $scope.deleteList = function () {
 | 
						|
 | 
						|
        $scope.cyberPanelLoading = false;
 | 
						|
 | 
						|
        url = "/emailMarketing/deleteList";
 | 
						|
 | 
						|
        var data = {
 | 
						|
            listName: $scope.listName
 | 
						|
        };
 | 
						|
 | 
						|
        var config = {
 | 
						|
            headers: {
 | 
						|
                'X-CSRFToken': getCookie('csrftoken')
 | 
						|
            }
 | 
						|
        };
 | 
						|
 | 
						|
        $http.post(url, data, config).then(ListInitialDatas, cantLoadInitialDatas);
 | 
						|
 | 
						|
 | 
						|
        function ListInitialDatas(response) {
 | 
						|
            $scope.cyberPanelLoading = true;
 | 
						|
            if (response.data.status === 1) {
 | 
						|
                new PNotify({
 | 
						|
                    title: 'Success!',
 | 
						|
                    text: 'Emails Successfully Deleted.',
 | 
						|
                    type: 'success'
 | 
						|
                });
 | 
						|
            } else {
 | 
						|
 | 
						|
                $scope.cyberPanelLoading = false;
 | 
						|
 | 
						|
                new PNotify({
 | 
						|
                    title: 'Operation Failed!',
 | 
						|
                    text: response.data.error_message,
 | 
						|
                    type: 'error'
 | 
						|
                });
 | 
						|
 | 
						|
            }
 | 
						|
 | 
						|
        }
 | 
						|
 | 
						|
        function cantLoadInitialDatas(response) {
 | 
						|
            $scope.cyberPanelLoading = true;
 | 
						|
            new PNotify({
 | 
						|
                title: 'Operation Failed!',
 | 
						|
                text: 'Could not connect to server, please refresh this page',
 | 
						|
                type: 'error'
 | 
						|
            });
 | 
						|
 | 
						|
        }
 | 
						|
 | 
						|
    };
 | 
						|
 | 
						|
    $scope.showAddEmails = function () {
 | 
						|
        $scope.installationDetailsForm = false;
 | 
						|
        $scope.verificationStatus = true;
 | 
						|
    };
 | 
						|
 | 
						|
    // List Verification
 | 
						|
 | 
						|
    $scope.startVerification = function () {
 | 
						|
 | 
						|
        $scope.currentStatusVerification = 'Email verification job started..';
 | 
						|
        $scope.installationDetailsForm = true;
 | 
						|
        $scope.verificationStatus = false;
 | 
						|
        $scope.verificationButton = true;
 | 
						|
        $scope.cyberPanelLoading = false;
 | 
						|
 | 
						|
        url = "/emailMarketing/emailVerificationJob";
 | 
						|
 | 
						|
        var data = {
 | 
						|
            listName: $scope.listName
 | 
						|
        };
 | 
						|
 | 
						|
        var config = {
 | 
						|
            headers: {
 | 
						|
                'X-CSRFToken': getCookie('csrftoken')
 | 
						|
            }
 | 
						|
        };
 | 
						|
 | 
						|
        $http.post(url, data, config).then(ListInitialDatas, cantLoadInitialDatas);
 | 
						|
 | 
						|
 | 
						|
        function ListInitialDatas(response) {
 | 
						|
 | 
						|
            if (response.data.status === 1) {
 | 
						|
                listVerificationStatus();
 | 
						|
                $scope.verificationButton = true;
 | 
						|
            } else {
 | 
						|
 | 
						|
                $scope.cyberPanelLoading = true;
 | 
						|
                $scope.verificationButton = false;
 | 
						|
 | 
						|
                new PNotify({
 | 
						|
                    title: 'Operation Failed!',
 | 
						|
                    text: response.data.error_message,
 | 
						|
                    type: 'error'
 | 
						|
                });
 | 
						|
 | 
						|
            }
 | 
						|
 | 
						|
        }
 | 
						|
 | 
						|
        function cantLoadInitialDatas(response) {
 | 
						|
            $scope.cyberPanelLoading = true;
 | 
						|
            $scope.verificationButton = false;
 | 
						|
            new PNotify({
 | 
						|
                title: 'Operation Failed!',
 | 
						|
                text: 'Could not connect to server, please refresh this page',
 | 
						|
                type: 'error'
 | 
						|
            });
 | 
						|
 | 
						|
        }
 | 
						|
 | 
						|
 | 
						|
    };
 | 
						|
 | 
						|
    var globalCounter = 0;
 | 
						|
 | 
						|
    function listVerificationStatus() {
 | 
						|
 | 
						|
        $scope.verificationButton = true;
 | 
						|
        $scope.cyberPanelLoading = false;
 | 
						|
 | 
						|
        url = "/websites/installWordpressStatus";
 | 
						|
 | 
						|
        var data = {
 | 
						|
            domain: $("#domainNamePage").text(),
 | 
						|
            statusFile: "/home/cyberpanel/" + $("#domainNamePage").text() + "/" + $scope.listName
 | 
						|
        };
 | 
						|
 | 
						|
        var config = {
 | 
						|
            headers: {
 | 
						|
                'X-CSRFToken': getCookie('csrftoken')
 | 
						|
            }
 | 
						|
        };
 | 
						|
 | 
						|
 | 
						|
        $http.post(url, data, config).then(ListInitialDatas, cantLoadInitialDatas);
 | 
						|
 | 
						|
 | 
						|
        function ListInitialDatas(response) {
 | 
						|
 | 
						|
 | 
						|
            if (response.data.abort === 1) {
 | 
						|
 | 
						|
                if (response.data.installStatus === 1) {
 | 
						|
                    $scope.cyberPanelLoading = true;
 | 
						|
                    $scope.verificationButton = false;
 | 
						|
                    $scope.currentStatusVerification = 'Emails successfully verified.';
 | 
						|
                    $timeout.cancel();
 | 
						|
 | 
						|
                } else {
 | 
						|
 | 
						|
                    if (response.data.error_message.search('No such file') > -1) {
 | 
						|
                        $scope.verificationButton = false;
 | 
						|
                        return;
 | 
						|
                    }
 | 
						|
                    $scope.verificationButton = true;
 | 
						|
                    $scope.cyberPanelLoading = false;
 | 
						|
                    $scope.verificationStatus = false;
 | 
						|
                    $scope.currentStatusVerification = response.data.error_message;
 | 
						|
 | 
						|
                }
 | 
						|
 | 
						|
            } else {
 | 
						|
 | 
						|
                if (response.data.currentStatus.search('No such file') > -1) {
 | 
						|
                    $scope.cyberPanelLoading = true;
 | 
						|
                    $scope.deleteTemplateBTN = false;
 | 
						|
                    $scope.sendEmailBTN = false;
 | 
						|
                    $scope.sendEmailsView = true;
 | 
						|
                    $scope.jobStatus = true;
 | 
						|
                    $scope.goBackDisable = false;
 | 
						|
                    $timeout.cancel();
 | 
						|
                    return;
 | 
						|
                }
 | 
						|
 | 
						|
                $scope.currentStatusVerification = response.data.currentStatus;
 | 
						|
                $timeout(listVerificationStatus, 1000);
 | 
						|
                $scope.verificationStatus = false;
 | 
						|
            }
 | 
						|
 | 
						|
        }
 | 
						|
 | 
						|
        function cantLoadInitialDatas(response) {
 | 
						|
            $scope.cyberPanelLoading = true;
 | 
						|
            new PNotify({
 | 
						|
                title: 'Operation Failed!',
 | 
						|
                text: 'Could not connect to server, please refresh this page',
 | 
						|
                type: 'error'
 | 
						|
            });
 | 
						|
 | 
						|
 | 
						|
        }
 | 
						|
 | 
						|
 | 
						|
    }
 | 
						|
 | 
						|
    // Delete Email from list
 | 
						|
 | 
						|
    $scope.deleteEmail = function (id) {
 | 
						|
 | 
						|
        $scope.cyberPanelLoading = false;
 | 
						|
 | 
						|
        url = "/emailMarketing/deleteEmail";
 | 
						|
 | 
						|
        var data = {
 | 
						|
            id: id
 | 
						|
        };
 | 
						|
 | 
						|
        var config = {
 | 
						|
            headers: {
 | 
						|
                'X-CSRFToken': getCookie('csrftoken')
 | 
						|
            }
 | 
						|
        };
 | 
						|
 | 
						|
        $http.post(url, data, config).then(ListInitialDatas, cantLoadInitialDatas);
 | 
						|
 | 
						|
 | 
						|
        function ListInitialDatas(response) {
 | 
						|
            $scope.cyberPanelLoading = true;
 | 
						|
            $scope.fetchEmails(globalPage);
 | 
						|
 | 
						|
            if (response.data.status === 1) {
 | 
						|
                $scope.fetchEmails(globalPage);
 | 
						|
                new PNotify({
 | 
						|
                    title: 'Success.',
 | 
						|
                    text: 'Email Successfully deleted.',
 | 
						|
                    type: 'success'
 | 
						|
                });
 | 
						|
 | 
						|
            } else {
 | 
						|
 | 
						|
                new PNotify({
 | 
						|
                    title: 'Operation Failed!',
 | 
						|
                    text: response.data.error_message,
 | 
						|
                    type: 'error'
 | 
						|
                });
 | 
						|
 | 
						|
            }
 | 
						|
 | 
						|
        }
 | 
						|
 | 
						|
        function cantLoadInitialDatas(response) {
 | 
						|
            $scope.cyberPanelLoading = true;
 | 
						|
            new PNotify({
 | 
						|
                title: 'Operation Failed!',
 | 
						|
                text: 'Could not connect to server, please refresh this page',
 | 
						|
                type: 'error'
 | 
						|
            });
 | 
						|
 | 
						|
        }
 | 
						|
 | 
						|
    };
 | 
						|
 | 
						|
 | 
						|
    $scope.currentPageLogs = 1;
 | 
						|
    $scope.recordsToShowLogs = 10;
 | 
						|
 | 
						|
    $scope.fetchLogs = function () {
 | 
						|
 | 
						|
        $scope.cyberPanelLoading = false;
 | 
						|
 | 
						|
        var config = {
 | 
						|
            headers: {
 | 
						|
                'X-CSRFToken': getCookie('csrftoken')
 | 
						|
            }
 | 
						|
        };
 | 
						|
 | 
						|
        var data = {
 | 
						|
            listName: $scope.listName,
 | 
						|
            page: $scope.currentPageLogs,
 | 
						|
            recordsToShow: $scope.recordsToShowLogs
 | 
						|
        };
 | 
						|
 | 
						|
        url = "/emailMarketing/fetchVerifyLogs";
 | 
						|
 | 
						|
        $http.post(url, data, config).then(ListInitialData, cantLoadInitialData);
 | 
						|
 | 
						|
        function ListInitialData(response) {
 | 
						|
            $scope.cyberPanelLoading = true;
 | 
						|
            if (response.data.status === 1) {
 | 
						|
                $scope.recordsLogs = JSON.parse(response.data.logs);
 | 
						|
                $scope.paginationLogs = response.data.pagination;
 | 
						|
                $scope.totalEmails = response.data.totalEmails;
 | 
						|
                $scope.verified = response.data.verified;
 | 
						|
                $scope.notVerified = response.data.notVerified;
 | 
						|
            } else {
 | 
						|
                new PNotify({
 | 
						|
                    title: 'Error!',
 | 
						|
                    text: response.data.error_message,
 | 
						|
                    type: 'error'
 | 
						|
                });
 | 
						|
            }
 | 
						|
        }
 | 
						|
        function cantLoadInitialData(response) {
 | 
						|
            $scope.cyberPanelLoading = true;
 | 
						|
            new PNotify({
 | 
						|
                title: 'Operation Failed!',
 | 
						|
                text: 'Could not connect to server, please refresh this page',
 | 
						|
                type: 'error'
 | 
						|
            });
 | 
						|
        }
 | 
						|
 | 
						|
 | 
						|
    };
 | 
						|
 | 
						|
 | 
						|
});
 | 
						|
 | 
						|
app.controller('manageSMTPHostsCTRL', function ($scope, $http) {
 | 
						|
 | 
						|
    $scope.cyberPanelLoading = true;
 | 
						|
    $scope.fetchSMTPHosts = function () {
 | 
						|
        $scope.cyberPanelLoading = false;
 | 
						|
 | 
						|
        url = "/emailMarketing/fetchSMTPHosts";
 | 
						|
 | 
						|
        var data = {};
 | 
						|
 | 
						|
        var config = {
 | 
						|
            headers: {
 | 
						|
                'X-CSRFToken': getCookie('csrftoken')
 | 
						|
            }
 | 
						|
        };
 | 
						|
 | 
						|
        $http.post(url, data, config).then(ListInitialDatas, cantLoadInitialDatas);
 | 
						|
 | 
						|
 | 
						|
        function ListInitialDatas(response) {
 | 
						|
            $scope.cyberPanelLoading = true;
 | 
						|
 | 
						|
            if (response.data.status === 1) {
 | 
						|
                $scope.records = JSON.parse(response.data.data);
 | 
						|
            } else {
 | 
						|
                new PNotify({
 | 
						|
                    title: 'Operation Failed!',
 | 
						|
                    text: response.data.error_message,
 | 
						|
                    type: 'error'
 | 
						|
                });
 | 
						|
            }
 | 
						|
        }
 | 
						|
 | 
						|
        function cantLoadInitialDatas(response) {
 | 
						|
            $scope.cyberPanelLoading = false;
 | 
						|
            new PNotify({
 | 
						|
                title: 'Operation Failed!',
 | 
						|
                text: 'Could not connect to server, please refresh this page',
 | 
						|
                type: 'error'
 | 
						|
            });
 | 
						|
 | 
						|
        }
 | 
						|
 | 
						|
    };
 | 
						|
    $scope.fetchSMTPHosts();
 | 
						|
    $scope.saveSMTPHost = function (status, userName) {
 | 
						|
        $scope.cyberPanelLoading = false;
 | 
						|
 | 
						|
        url = "/emailMarketing/saveSMTPHost";
 | 
						|
 | 
						|
        var data = {
 | 
						|
            smtpHost: $scope.smtpHost,
 | 
						|
            smtpPort: $scope.smtpPort,
 | 
						|
            smtpUserName: $scope.smtpUserName,
 | 
						|
            smtpPassword: $scope.smtpPassword
 | 
						|
        };
 | 
						|
 | 
						|
        var config = {
 | 
						|
            headers: {
 | 
						|
                'X-CSRFToken': getCookie('csrftoken')
 | 
						|
            }
 | 
						|
        };
 | 
						|
 | 
						|
        $http.post(url, data, config).then(ListInitialDatas, cantLoadInitialDatas);
 | 
						|
 | 
						|
 | 
						|
        function ListInitialDatas(response) {
 | 
						|
            $scope.cyberPanelLoading = true;
 | 
						|
 | 
						|
            if (response.data.status === 1) {
 | 
						|
                $scope.fetchSMTPHosts();
 | 
						|
                new PNotify({
 | 
						|
                    title: 'Success!',
 | 
						|
                    text: 'Successfully saved new SMTP host.',
 | 
						|
                    type: 'success'
 | 
						|
                });
 | 
						|
            } else {
 | 
						|
                new PNotify({
 | 
						|
                    title: 'Operation Failed!',
 | 
						|
                    text: response.data.error_message,
 | 
						|
                    type: 'error'
 | 
						|
                });
 | 
						|
            }
 | 
						|
        }
 | 
						|
 | 
						|
        function cantLoadInitialDatas(response) {
 | 
						|
            $scope.cyberPanelLoading = false;
 | 
						|
            new PNotify({
 | 
						|
                title: 'Operation Failed!',
 | 
						|
                text: 'Could not connect to server, please refresh this page',
 | 
						|
                type: 'error'
 | 
						|
            });
 | 
						|
 | 
						|
        }
 | 
						|
 | 
						|
    };
 | 
						|
    $scope.smtpHostOperations = function (operation, id) {
 | 
						|
        $scope.cyberPanelLoading = false;
 | 
						|
 | 
						|
        url = "/emailMarketing/smtpHostOperations";
 | 
						|
 | 
						|
        var data = {
 | 
						|
            id: id,
 | 
						|
            operation: operation
 | 
						|
        };
 | 
						|
 | 
						|
        var config = {
 | 
						|
            headers: {
 | 
						|
                'X-CSRFToken': getCookie('csrftoken')
 | 
						|
            }
 | 
						|
        };
 | 
						|
 | 
						|
        $http.post(url, data, config).then(ListInitialDatas, cantLoadInitialDatas);
 | 
						|
 | 
						|
 | 
						|
        function ListInitialDatas(response) {
 | 
						|
            $scope.cyberPanelLoading = true;
 | 
						|
            $scope.fetchSMTPHosts();
 | 
						|
 | 
						|
            if (response.data.status === 1) {
 | 
						|
                new PNotify({
 | 
						|
                    title: 'Success!',
 | 
						|
                    text: response.data.message,
 | 
						|
                    type: 'success'
 | 
						|
                });
 | 
						|
            } else {
 | 
						|
                new PNotify({
 | 
						|
                    title: 'Operation Failed!',
 | 
						|
                    text: response.data.error_message,
 | 
						|
                    type: 'error'
 | 
						|
                });
 | 
						|
            }
 | 
						|
        }
 | 
						|
 | 
						|
        function cantLoadInitialDatas(response) {
 | 
						|
            $scope.cyberPanelLoading = false;
 | 
						|
            new PNotify({
 | 
						|
                title: 'Operation Failed!',
 | 
						|
                text: 'Could not connect to server, please refresh this page',
 | 
						|
                type: 'error'
 | 
						|
            });
 | 
						|
 | 
						|
        }
 | 
						|
 | 
						|
    };
 | 
						|
});
 | 
						|
 | 
						|
app.controller('composeMessageCTRL', function ($scope, $http) {
 | 
						|
 | 
						|
    $scope.cyberPanelLoading = true;
 | 
						|
    $scope.saveTemplate = function (status, userName) {
 | 
						|
        $scope.cyberPanelLoading = false;
 | 
						|
 | 
						|
        url = "/emailMarketing/saveEmailTemplate";
 | 
						|
 | 
						|
        var data = {
 | 
						|
            name: $scope.name,
 | 
						|
            subject: $scope.subject,
 | 
						|
            fromName: $scope.fromName,
 | 
						|
            fromEmail: $scope.fromEmail,
 | 
						|
            replyTo: $scope.replyTo,
 | 
						|
            emailMessage: $scope.emailMessage
 | 
						|
        };
 | 
						|
 | 
						|
        var config = {
 | 
						|
            headers: {
 | 
						|
                'X-CSRFToken': getCookie('csrftoken')
 | 
						|
            }
 | 
						|
        };
 | 
						|
 | 
						|
        $http.post(url, data, config).then(ListInitialDatas, cantLoadInitialDatas);
 | 
						|
 | 
						|
 | 
						|
        function ListInitialDatas(response) {
 | 
						|
            $scope.cyberPanelLoading = true;
 | 
						|
 | 
						|
            if (response.data.status === 1) {
 | 
						|
                new PNotify({
 | 
						|
                    title: 'Success!',
 | 
						|
                    text: 'Template successfully saved.',
 | 
						|
                    type: 'success'
 | 
						|
                });
 | 
						|
            } else {
 | 
						|
                new PNotify({
 | 
						|
                    title: 'Operation Failed!',
 | 
						|
                    text: response.data.error_message,
 | 
						|
                    type: 'error'
 | 
						|
                });
 | 
						|
            }
 | 
						|
        }
 | 
						|
 | 
						|
        function cantLoadInitialDatas(response) {
 | 
						|
            $scope.cyberPanelLoading = false;
 | 
						|
            new PNotify({
 | 
						|
                title: 'Operation Failed!',
 | 
						|
                text: 'Could not connect to server, please refresh this page',
 | 
						|
                type: 'error'
 | 
						|
            });
 | 
						|
 | 
						|
        }
 | 
						|
 | 
						|
    };
 | 
						|
});
 | 
						|
 | 
						|
app.controller('sendEmailsCTRL', function ($scope, $http, $timeout) {
 | 
						|
 | 
						|
    $scope.cyberPanelLoading = true;
 | 
						|
    $scope.availableFunctions = true;
 | 
						|
    $scope.sendEmailsView = true;
 | 
						|
    $scope.jobStatus = true;
 | 
						|
 | 
						|
    // Button
 | 
						|
 | 
						|
    $scope.deleteTemplateBTN = false;
 | 
						|
    $scope.sendEmailBTN = false;
 | 
						|
 | 
						|
    $scope.templateSelected = function () {
 | 
						|
        $scope.availableFunctions = false;
 | 
						|
        $scope.sendEmailsView = true;
 | 
						|
        $scope.previewLink = '/emailMarketing/preview/' + $scope.selectedTemplate;
 | 
						|
        $scope.jobStatus = true;
 | 
						|
        emailJobStatus();
 | 
						|
 | 
						|
    };
 | 
						|
 | 
						|
    $scope.sendEmails = function () {
 | 
						|
        $scope.sendEmailsView = false;
 | 
						|
        $scope.fetchJobs();
 | 
						|
    };
 | 
						|
 | 
						|
    $scope.fetchJobs = function () {
 | 
						|
 | 
						|
        $scope.cyberPanelLoading = false;
 | 
						|
 | 
						|
        url = "/emailMarketing/fetchJobs";
 | 
						|
 | 
						|
        var data = {
 | 
						|
            'selectedTemplate': $scope.selectedTemplate
 | 
						|
        };
 | 
						|
 | 
						|
        var config = {
 | 
						|
            headers: {
 | 
						|
                'X-CSRFToken': getCookie('csrftoken')
 | 
						|
            }
 | 
						|
        };
 | 
						|
 | 
						|
        $http.post(url, data, config).then(ListInitialDatas, cantLoadInitialDatas);
 | 
						|
 | 
						|
 | 
						|
        function ListInitialDatas(response) {
 | 
						|
            $scope.cyberPanelLoading = true;
 | 
						|
 | 
						|
            if (response.data.status === 1) {
 | 
						|
                $scope.currentRecords = false;
 | 
						|
                $scope.records = JSON.parse(response.data.data);
 | 
						|
            } else {
 | 
						|
                new PNotify({
 | 
						|
                    title: 'Operation Failed!',
 | 
						|
                    text: response.data.error_message,
 | 
						|
                    type: 'error'
 | 
						|
                });
 | 
						|
            }
 | 
						|
        }
 | 
						|
 | 
						|
        function cantLoadInitialDatas(response) {
 | 
						|
            $scope.cyberPanelLoading = false;
 | 
						|
            new PNotify({
 | 
						|
                title: 'Operation Failed!',
 | 
						|
                text: 'Could not connect to server, please refresh this page',
 | 
						|
                type: 'error'
 | 
						|
            });
 | 
						|
 | 
						|
        }
 | 
						|
 | 
						|
    };
 | 
						|
 | 
						|
    $scope.startEmailJob = function () {
 | 
						|
        $scope.cyberPanelLoading = false;
 | 
						|
        $scope.deleteTemplateBTN = true;
 | 
						|
        $scope.sendEmailBTN = true;
 | 
						|
        $scope.sendEmailsView = true;
 | 
						|
        $scope.goBackDisable = true;
 | 
						|
 | 
						|
        url = "/emailMarketing/startEmailJob";
 | 
						|
 | 
						|
 | 
						|
        var data = {
 | 
						|
            'selectedTemplate': $scope.selectedTemplate,
 | 
						|
            'listName': $scope.listName,
 | 
						|
            'host': $scope.host,
 | 
						|
            'verificationCheck': $scope.verificationCheck,
 | 
						|
            'unsubscribeCheck': $scope.unsubscribeCheck
 | 
						|
        };
 | 
						|
 | 
						|
        var config = {
 | 
						|
            headers: {
 | 
						|
                'X-CSRFToken': getCookie('csrftoken')
 | 
						|
            }
 | 
						|
        };
 | 
						|
 | 
						|
        $http.post(url, data, config).then(ListInitialDatas, cantLoadInitialDatas);
 | 
						|
 | 
						|
 | 
						|
        function ListInitialDatas(response) {
 | 
						|
            $scope.cyberPanelLoading = true;
 | 
						|
 | 
						|
            if (response.data.status === 1) {
 | 
						|
                emailJobStatus();
 | 
						|
            } else {
 | 
						|
                $scope.cyberPanelLoading = true;
 | 
						|
                $scope.deleteTemplateBTN = false;
 | 
						|
                $scope.sendEmailBTN = false;
 | 
						|
                $scope.sendEmailsView = false;
 | 
						|
                $scope.jobStatus = true;
 | 
						|
                $scope.goBackDisable = false;
 | 
						|
                new PNotify({
 | 
						|
                    title: 'Operation Failed!',
 | 
						|
                    text: response.data.error_message,
 | 
						|
                    type: 'error'
 | 
						|
                });
 | 
						|
            }
 | 
						|
        }
 | 
						|
 | 
						|
        function cantLoadInitialDatas(response) {
 | 
						|
            $scope.cyberPanelLoading = false;
 | 
						|
            new PNotify({
 | 
						|
                title: 'Operation Failed!',
 | 
						|
                text: 'Could not connect to server, please refresh this page',
 | 
						|
                type: 'error'
 | 
						|
            });
 | 
						|
 | 
						|
        }
 | 
						|
 | 
						|
 | 
						|
    };
 | 
						|
 | 
						|
    function emailJobStatus() {
 | 
						|
 | 
						|
        $scope.cyberPanelLoading = false;
 | 
						|
        $scope.deleteTemplateBTN = true;
 | 
						|
        $scope.sendEmailBTN = true;
 | 
						|
        $scope.sendEmailsView = true;
 | 
						|
        $scope.jobStatus = false;
 | 
						|
        $scope.goBackDisable = true;
 | 
						|
 | 
						|
        url = "/websites/installWordpressStatus";
 | 
						|
 | 
						|
        var data = {
 | 
						|
            domain: 'example.com',
 | 
						|
            statusFile: "/home/cyberpanel/" + $scope.selectedTemplate + "_pendingJob"
 | 
						|
        };
 | 
						|
 | 
						|
        var config = {
 | 
						|
            headers: {
 | 
						|
                'X-CSRFToken': getCookie('csrftoken')
 | 
						|
            }
 | 
						|
        };
 | 
						|
 | 
						|
 | 
						|
        $http.post(url, data, config).then(ListInitialDatas, cantLoadInitialDatas);
 | 
						|
 | 
						|
 | 
						|
        function ListInitialDatas(response) {
 | 
						|
 | 
						|
 | 
						|
            if (response.data.abort === 1) {
 | 
						|
 | 
						|
                if (response.data.installStatus === 1) {
 | 
						|
                    $scope.cyberPanelLoading = true;
 | 
						|
                    $scope.deleteTemplateBTN = false;
 | 
						|
                    $scope.sendEmailBTN = false;
 | 
						|
                    $scope.sendEmailsView = true;
 | 
						|
                    $scope.jobStatus = false;
 | 
						|
                    $scope.goBackDisable = false;
 | 
						|
                    $scope.currentStatus = 'Emails successfully sent.';
 | 
						|
                    $scope.fetchJobs();
 | 
						|
                    $timeout.cancel();
 | 
						|
 | 
						|
                } else {
 | 
						|
 | 
						|
                    if (response.data.error_message.search('No such file') > -1) {
 | 
						|
                        $scope.cyberPanelLoading = true;
 | 
						|
                        $scope.deleteTemplateBTN = false;
 | 
						|
                        $scope.sendEmailBTN = false;
 | 
						|
                        $scope.sendEmailsView = true;
 | 
						|
                        $scope.jobStatus = true;
 | 
						|
                        $scope.goBackDisable = false;
 | 
						|
                        return;
 | 
						|
                    }
 | 
						|
                    $scope.cyberPanelLoading = true;
 | 
						|
                    $scope.deleteTemplateBTN = false;
 | 
						|
                    $scope.sendEmailBTN = false;
 | 
						|
                    $scope.sendEmailsView = true;
 | 
						|
                    $scope.jobStatus = false;
 | 
						|
                    $scope.goBackDisable = false;
 | 
						|
                    $scope.currentStatus = response.data.error_message;
 | 
						|
 | 
						|
                }
 | 
						|
 | 
						|
            } else {
 | 
						|
 | 
						|
                if (response.data.currentStatus.search('No such file') > -1) {
 | 
						|
                    $scope.cyberPanelLoading = true;
 | 
						|
                    $scope.deleteTemplateBTN = false;
 | 
						|
                    $scope.sendEmailBTN = false;
 | 
						|
                    $scope.sendEmailsView = true;
 | 
						|
                    $scope.jobStatus = true;
 | 
						|
                    $scope.goBackDisable = false;
 | 
						|
                    $timeout.cancel();
 | 
						|
                    return;
 | 
						|
                }
 | 
						|
 | 
						|
                $scope.currentStatus = response.data.currentStatus;
 | 
						|
                $timeout(emailJobStatus, 1000);
 | 
						|
                $scope.cyberPanelLoading = false;
 | 
						|
                $scope.deleteTemplateBTN = true;
 | 
						|
                $scope.sendEmailBTN = true;
 | 
						|
                $scope.sendEmailsView = true;
 | 
						|
                $scope.jobStatus = false;
 | 
						|
                $scope.goBackDisable = true;
 | 
						|
            }
 | 
						|
 | 
						|
        }
 | 
						|
 | 
						|
        function cantLoadInitialDatas(response) {
 | 
						|
            $scope.cyberPanelLoading = true;
 | 
						|
            new PNotify({
 | 
						|
                title: 'Operation Failed!',
 | 
						|
                text: 'Could not connect to server, please refresh this page.',
 | 
						|
                type: 'error'
 | 
						|
            });
 | 
						|
 | 
						|
 | 
						|
        }
 | 
						|
 | 
						|
 | 
						|
    }
 | 
						|
 | 
						|
    $scope.goBack = function () {
 | 
						|
        $scope.cyberPanelLoading = true;
 | 
						|
        $scope.deleteTemplateBTN = false;
 | 
						|
        $scope.sendEmailBTN = false;
 | 
						|
        $scope.sendEmailsView = false;
 | 
						|
        $scope.jobStatus = true;
 | 
						|
 | 
						|
    };
 | 
						|
 | 
						|
    $scope.deleteTemplate = function () {
 | 
						|
 | 
						|
        $scope.cyberPanelLoading = false;
 | 
						|
 | 
						|
        url = "/emailMarketing/deleteTemplate";
 | 
						|
 | 
						|
        var data = {
 | 
						|
            selectedTemplate: $scope.selectedTemplate
 | 
						|
        };
 | 
						|
 | 
						|
        var config = {
 | 
						|
            headers: {
 | 
						|
                'X-CSRFToken': getCookie('csrftoken')
 | 
						|
            }
 | 
						|
        };
 | 
						|
 | 
						|
        $http.post(url, data, config).then(ListInitialDatas, cantLoadInitialDatas);
 | 
						|
 | 
						|
 | 
						|
        function ListInitialDatas(response) {
 | 
						|
            $scope.cyberPanelLoading = true;
 | 
						|
 | 
						|
            if (response.data.status === 1) {
 | 
						|
                new PNotify({
 | 
						|
                    title: 'Success.',
 | 
						|
                    text: 'Template Successfully deleted.',
 | 
						|
                    type: 'success'
 | 
						|
                });
 | 
						|
 | 
						|
            } else {
 | 
						|
 | 
						|
                new PNotify({
 | 
						|
                    title: 'Operation Failed!',
 | 
						|
                    text: response.data.error_message,
 | 
						|
                    type: 'error'
 | 
						|
                });
 | 
						|
 | 
						|
            }
 | 
						|
 | 
						|
        }
 | 
						|
 | 
						|
        function cantLoadInitialDatas(response) {
 | 
						|
            $scope.cyberPanelLoading = true;
 | 
						|
            new PNotify({
 | 
						|
                title: 'Operation Failed!',
 | 
						|
                text: 'Could not connect to server, please refresh this page',
 | 
						|
                type: 'error'
 | 
						|
            });
 | 
						|
 | 
						|
        }
 | 
						|
 | 
						|
    };
 | 
						|
    $scope.deleteJob = function (id) {
 | 
						|
 | 
						|
        $scope.cyberPanelLoading = false;
 | 
						|
 | 
						|
        url = "/emailMarketing/deleteJob";
 | 
						|
 | 
						|
        var data = {
 | 
						|
            id: id
 | 
						|
        };
 | 
						|
 | 
						|
        var config = {
 | 
						|
            headers: {
 | 
						|
                'X-CSRFToken': getCookie('csrftoken')
 | 
						|
            }
 | 
						|
        };
 | 
						|
 | 
						|
        $http.post(url, data, config).then(ListInitialDatas, cantLoadInitialDatas);
 | 
						|
 | 
						|
 | 
						|
        function ListInitialDatas(response) {
 | 
						|
            $scope.cyberPanelLoading = true;
 | 
						|
            $scope.fetchJobs();
 | 
						|
 | 
						|
            if (response.data.status === 1) {
 | 
						|
                new PNotify({
 | 
						|
                    title: 'Success.',
 | 
						|
                    text: 'Template Successfully deleted.',
 | 
						|
                    type: 'success'
 | 
						|
                });
 | 
						|
 | 
						|
            } else {
 | 
						|
 | 
						|
                new PNotify({
 | 
						|
                    title: 'Operation Failed!',
 | 
						|
                    text: response.data.error_message,
 | 
						|
                    type: 'error'
 | 
						|
                });
 | 
						|
 | 
						|
            }
 | 
						|
 | 
						|
        }
 | 
						|
 | 
						|
        function cantLoadInitialDatas(response) {
 | 
						|
            $scope.cyberPanelLoading = true;
 | 
						|
            new PNotify({
 | 
						|
                title: 'Operation Failed!',
 | 
						|
                text: 'Could not connect to server, please refresh this page',
 | 
						|
                type: 'error'
 | 
						|
            });
 | 
						|
 | 
						|
        }
 | 
						|
 | 
						|
    };
 | 
						|
});
 | 
						|
 | 
						|
app.controller('configureVerify', function ($scope, $http) {
 | 
						|
 | 
						|
    $scope.cyberPanelLoading = true;
 | 
						|
    $scope.ipv4Hidden = true;
 | 
						|
    $scope.ipv6Hidden = true;
 | 
						|
    $scope.delayHidden = true;
 | 
						|
 | 
						|
    $scope.delayInitial = function () {
 | 
						|
        if ($scope.delay === 'Disable') {
 | 
						|
            $scope.delayHidden = true;
 | 
						|
        } else {
 | 
						|
            $scope.delayHidden = false;
 | 
						|
        }
 | 
						|
    };
 | 
						|
    $scope.rotateInitial = function () {
 | 
						|
        if ($scope.rotation === 'Disable') {
 | 
						|
            $scope.rotationHidden = true;
 | 
						|
        } else if ($scope.rotation === 'IPv4') {
 | 
						|
            $scope.ipv4Hidden = false;
 | 
						|
            $scope.ipv6Hidden = true;
 | 
						|
        } else {
 | 
						|
            $scope.ipv4Hidden = true;
 | 
						|
            $scope.ipv6Hidden = false;
 | 
						|
        }
 | 
						|
    };
 | 
						|
 | 
						|
    $scope.saveChanges = function () {
 | 
						|
 | 
						|
        $scope.cyberPanelLoading = false;
 | 
						|
 | 
						|
        url = "/emailMarketing/saveConfigureVerify";
 | 
						|
 | 
						|
        var data = {
 | 
						|
            domain: $("#domainName").text(),
 | 
						|
            rotation: $scope.rotation,
 | 
						|
            delay: $scope.delay,
 | 
						|
            delayAfter: $scope.delayAfter,
 | 
						|
            delayTime: $scope.delayTime,
 | 
						|
            ipv4: $scope.ipv4,
 | 
						|
            ipv6: $scope.ipv6
 | 
						|
        };
 | 
						|
 | 
						|
        var config = {
 | 
						|
            headers: {
 | 
						|
                'X-CSRFToken': getCookie('csrftoken')
 | 
						|
            }
 | 
						|
        };
 | 
						|
 | 
						|
        $http.post(url, data, config).then(ListInitialDatas, cantLoadInitialDatas);
 | 
						|
 | 
						|
 | 
						|
        function ListInitialDatas(response) {
 | 
						|
            $scope.cyberPanelLoading = true;
 | 
						|
 | 
						|
            if (response.data.status === 1) {
 | 
						|
 | 
						|
                new PNotify({
 | 
						|
                    title: 'Success!',
 | 
						|
                    text: 'Successfully saved verification settings.',
 | 
						|
                    type: 'success'
 | 
						|
                });
 | 
						|
            } else {
 | 
						|
                new PNotify({
 | 
						|
                    title: 'Operation Failed!',
 | 
						|
                    text: response.data.error_message,
 | 
						|
                    type: 'error'
 | 
						|
                });
 | 
						|
            }
 | 
						|
        }
 | 
						|
 | 
						|
        function cantLoadInitialDatas(response) {
 | 
						|
            $scope.cyberPanelLoading = false;
 | 
						|
            new PNotify({
 | 
						|
                title: 'Operation Failed!',
 | 
						|
                text: 'Could not connect to server, please refresh this page',
 | 
						|
                type: 'error'
 | 
						|
            });
 | 
						|
 | 
						|
        }
 | 
						|
 | 
						|
    };
 | 
						|
});
 | 
						|
 | 
						|
 |