HEX
Server: Microsoft-IIS/8.5
System: Windows NT YDAWBH120 6.3 build 9600 (Windows Server 2012 R2 Standard Edition) AMD64
User: tentjecom_web (0)
PHP: 7.4.14
Disabled: NONE
Upload Files
File: D:/HostingSpaces/PvdBoogaard/indoorski.nl/backup/oude-site/cms/javascript/admin.importer.js
/**
 * This object handles all the javascript related functions for the
 * website importer in the control panel
 */

var AdminImporter = {

	contentTypeOptions: '',
	RunAllList: new Array(),
	appName: '',
	TasksAlreadyRun: new Array(),
	SelectContentType: new Array(),
	isRunningAllTasks: false,

	changeImporter: function () {
		if($('#ImportSoftware').selectedValues() == 'iwp45'){
			$('#iwp45Configure').show();
		}
	},

	checkMessage: function (errorType, errorText){
		if(errorType == ''){
			return;
		}

		if(errorType == 'success'){
			$('#MainMessage').successMessage(errorText);
		}

		if(errorType == 'error'){
			$('#MainMessage').errorMessage(errorText);
		}
	},

	cancelImport: function (){
		window.location = 'index.php?section=importer&action=cancel';
	},

	cancelImportCheck: function (){
		$.getJSON('remote.php?section=importer&action=checkCanCancelFromTasks',
				function(data){
					if(data.canCancel){
						window.location = 'index.php?section=importer&action=cancel';
					}else{
						$('#MainMessage').errorMessage(data.message);
					}
				}
			);
	},

	checkDisclaimerForm: function()
	{
		if($('#importerForm :checkbox[checked!=checked]').exists()) {
			return false;
		}
		return true;
	},

	checkSelectImporterForm: function () {

		if($('#ImportSoftware').selectedValues() == '')
		{
			alert(iwp.lang.get('selectWebsiteSoftware'));
			return false;
		}

		try
		{
			validator = $('#ImportSoftware').selectedValues() + 'CheckForm';
			func = eval(validator+'();');
			if(func == false) return false;
		}
		catch(e)
		{
		}

		if($('#DeleteAll:checked').exists() == true && !confirm(iwp.lang.get('confirmRemoveAllContent'))) {
			return false;
		}
	},

	RunImportModule: function(appName, taskName, askForContentType, dependencies){
		if(typeof(dependencies) != 'undefined'){
			// we need to check the dependencies before this task can run
			for(i in dependencies){
				if(!in_array(dependencies[i], AdminImporter.TasksAlreadyRun)){
					var alsoImport = '';
					for(x in dependencies){
						alsoImport = alsoImport + "\r\n - " + dependencies[x].substr(0, 1).toUpperCase() + dependencies[x].substr(1);
					}
					alert(iwp.lang.get('taskHasDependantTasks').replace('%taskName%', taskName).replace('%alsoImport%',  alsoImport));
					return;
				}
			}
		}

		if(typeof(askForContentType) == 'undefined' || askForContentType != true || $(AdminImporter.contentTypeOptions).find('option').size() < 2){
			AdminImporter.RunTask(appName, taskName);
			return;
		}

		var contentTypeOptions = AdminImporter.contentTypeOptions.replace('{typename}', taskName.substr(0, 1).toUpperCase() + taskName.substr(1));

		var SelectContentTypeButtons = '<input type="button" value="Skip '+ taskName.substr(0, 1).toUpperCase() + taskName.substr(1) + '" style="width: 75px;" class="Button" onclick=\'AdminImporter.skipImportTask("' + taskName + '");\' /> <input type="button" value="' + iwp.lang.get('continueRaquo') + '" style="width: 75px;" class="Button" onclick=\'AdminImporter.RunTask("' + appName + '", "' + taskName + '", $("#selectContentType").selectedValues());\' />';

		AdminImporter.modalWindow = $.fn.window.create({
			width    : 500,
			title    : 'Import ' + taskName.substr(0, 1).toUpperCase() + taskName.substr(1),
			content  : iwp.lang.get('selectContentTypeToImportInto').replace('%taskName%', taskName) + '<br /> <br />' + contentTypeOptions,
			autoOpen : true
		});

		// if any of the close buttons are pressed, cancel the block move
		AdminImporter.modalWindow.buttons(SelectContentTypeButtons).jQuery().find('.modalClose, .modalCloseAction').unbind('click').bind('click', function() {
			AdminImporter.modalWindow.close();
		});

		if(taskName == 'articles') {
			$('#selectContentType option[text="Articles"]').attr('selected', 'selected');

		}else if(taskName == 'blogs') {
			$('#selectContentType option[text="Blogs"]').attr('selected', 'selected');

		}else if(taskName == 'news') {
			$('#selectContentType option[text="News"]').attr('selected', 'selected');

		}else if(taskName == 'pages') {
			$('#selectContentType option[text="Web Pages"]').attr('selected', 'selected');
		}

		return;
	},

	modalWindow: {},

	RunTask: function(appName, taskName, contentType){
		if(typeof(contentType) == 'undefined' || contentType == false){
			var contentType = '&contenttype=0';
		}else{
			AdminImporter.modalWindow.close();
			var contentType = '&contenttype='+contentType;
		}

		AdminImporter.modalWindow = $.fn.window.create({
			width    : 500,
			title    : iwp.lang.get('importInProgress'),
			content  : $('#ProgressWindow').html(),
			autoOpen : true
		});

		$('#progressiframe').remove();
		$('<iframe></iframe>').attr('id', 'progressiframe').appendTo('body').hide();
		$('#progressiframe').attr('src', 'index.php?section=importer&action=runtask&task=' + taskName + '&appName=' + appName + contentType);
	},

	updateProgressBar: function(percent){
		$('.progressBarPercentage').css('width', parseInt(percent, 10) + "%");
		$('.progressPercent').html(percent+ "%");
	},

	progressError: function(message){
		AdminImporter.modalWindow.close();
		$('#MainMessage').errorMessage(message);
	},

	skipImportTask: function(taskName) {
		AdminImporter.modalWindow.close();
		if(AdminImporter.isRunningAllTasks){
			AdminImporter.modalWindow.close();
			AdminImporter.updateProgressBar(0);
			AdminImporter.TasksAlreadyRun.push(taskName);
			AdminImporter.RunAllTasks(taskName);
		}
	},

	finishImportTask: function(message, type, taskName, dateFinished){
		AdminImporter.modalWindow.close();
		AdminImporter.updateProgressBar(0);
		if(type == 'success'){
			AdminImporter.TasksAlreadyRun.push(taskName);
			$('#MainMessage').successMessage(message);
			$('#'+taskName+'_status').html('<span style="color: green; font-weight: bold;">' + iwp.lang.get('importSuccess') + '</span>');

		}else if(type == 'warning'){
			$('#MainMessage').warningMessage(message);
			AdminImporter.TasksAlreadyRun.push(taskName);
			$('#'+taskName+'_status').html('<span style="color: orange; font-weight: bold;">' + iwp.lang.get('importPartialSuccess') + '</span>');

		}else if(type == 'error'){
			$('#MainMessage').errorMessage(message);
			$('#'+taskName+'_status').html('<span style="color: red; font-weight: bold;">' + iwp.lang.get('importFailed') + '</span>');
		}

		$('#'+taskName+'_viewreport').removeClass('Disabled').html('<a href="#" onClick="AdminImporter.ShowReport(\'' + taskName + '\');">'+ $('#'+taskName+'_viewreport').text() +'</a>');
		$('#'+taskName+'_rollback').removeClass('Disabled').html('<a href="#" onClick="AdminImporter.RollBackTask(\'' + taskName + '\');">'+ $('#'+taskName+'_rollback').text() +'</a>');
		$('#'+taskName+'_gridrow').addClass('QuickView');
		$('#'+taskName+'_daterun').html(dateFinished);

		if(AdminImporter.isRunningAllTasks){
			AdminImporter.RunAllTasks(taskName);
		}
	},

	ShowReport: function(taskName) {
		AdminImporter.modalWindow = $.fn.window.create({
			width    : 500,
			title    : 'View Report',
			autoOpen : true,
			uri: 'remote.php?section=importer&action=getreport&report='+taskName
		});
	},

	RollBackTask: function(taskName) {
		iwp.showLoadingIndicator();
		window.location = 'index.php?section=importer&action=rollbacktask&task='+taskName;
	},

	ShowImportParts: function(){
		$('#ImportModules').show();
		$('.next_button').hide();
		$('.finish_button').show();
	},

	ShowImportAll: function(){
		$('#ImportModules').hide();
		$('.next_button').show();
		$('.finish_button').hide();
	},

	FinishImporting: function(){
		window.location = 'index.php?section=importer&action=finishimport';
	},

	RunAllTasks: function(completedTask){
		AdminImporter.isRunningAllTasks = true;
		var runNext = false;
		if(typeof(completedTask) == 'undefined'){
			// first time this function has been run
			runNext = true;
		}

		for(i in AdminImporter.RunAllList){
			if(runNext){
				AdminImporter.RunImportModule(AdminImporter.appName, AdminImporter.RunAllList[i], in_array(AdminImporter.RunAllList[i], AdminImporter.SelectContentType));
				return;
			}
			if(AdminImporter.RunAllList[i] == completedTask){
				runNext = true;
			}
		}

		// if we make it down here, we can assume all tasks have been run!
		AdminImporter.isRunningAllTasks = false;
		AdminImporter.ShowImportParts();
		$('#ImportOptionsTable').hide();
		$('#BottomButtons').hide();
		$('#TaskMessageBox').hide();
		$('#MainMessage').successMessage(iwp.lang.get('importProcessFinishedSuccessfully'));
	}
}