/**
* Bulk upload sites
*/
let import_current = 0;
let import_stop_by_user = false;
let import_total = 0;
let import_count_success = 0;
let import_count_fails = 0;
window.mainwpVars = window.mainwpVars || {};
jQuery(function () {
import_total = jQuery('#mainwp_managesites_total_import').val();
jQuery(document).on('click', '#mainwp_managesites_btn_import', function () {
if (!import_stop_by_user) {
import_stop_by_user = true;
jQuery('#mainwp_managesites_import_logging .log').append(__('Paused import by user.') + "\n");
jQuery('#mainwp_managesites_btn_import').val(__('Continue'));
jQuery('#mainwp_managesites_btn_save_csv').prop("disabled", false); //Enable
} else {
import_stop_by_user = false;
jQuery('#mainwp_managesites_import_logging .log').append(__('Continue import.') + "\n");
jQuery('#mainwp_managesites_btn_import').val(__('Pause'));
jQuery('#mainwp_managesites_btn_save_csv').attr('disabled', 'true'); // Disable
mainwp_managesites_import_sites();
}
});
jQuery(document).on('click', '#mainwp_managesites_btn_save_csv', function () {
let fail_data = '';
jQuery('#mainwp_managesites_import_fail_logging span').each(function () {
fail_data += jQuery(this).html() + "\r";
});
let blob = new Blob([fail_data], { type: "text/plain;charset=utf-8" });
saveAs(blob, "import_sites_fails.csv");
});
if (jQuery('#mainwp_managesites_do_import').val() == 1) {
mainwp_managesites_import_sites();
}
});
// eslint-disable-next-line complexity
let mainwp_managesites_import_sites = function () { // NOSONAR - to compatible.
if (import_stop_by_user)
return;
let page_href = jQuery("#mainwp-import-sites-modal").attr('data-page-url');
jQuery('#mainwp-importing-sites').hide();
import_current++;
if (import_current > import_total) {
jQuery('#mainwp-import-sites-status-message').hide();
jQuery('#mainwp_managesites_btn_import').attr('disabled', 'true'); //Disable
if (import_count_success < import_total) {
jQuery('#mainwp_managesites_btn_save_csv').prop("disabled", false); //Enable
}
if (import_count_fails == 0) {
jQuery('#mainwp_managesites_import_logging .log').html('
Process completed with errors. ' + import_count_fails + ' site(s) failed to import. Please review logs to resolve problems and try again.
');
jQuery('#mainwp_managesites_btn_import').hide();
jQuery('#mainwp-import-sites-modal-try-again').show();
jQuery('#mainwp-import-sites-modal-continue').show();
}
jQuery('#mainwp_managesites_import_logging').scrollTop(jQuery('#mainwp_managesites_import_logging .log').height());
return;
}
// Call the customer constructor without the website on the last run.
if (import_current == import_total) {
mainwp_managesites_import_client_no_website();
}
let import_data = jQuery('#mainwp_managesites_import_csv_line_' + import_current).attr('encoded-data');
let import_line_orig = jQuery('#mainwp_managesites_import_csv_line_' + import_current).attr('original');
const is_page_managesites = jQuery('#mainwp_managesites_do_managesites_import').val(); // Get value page managesites
let decodedVal = JSON.parse(import_data);
let import_wpname = decodedVal.name;
let import_wpurl = decodedVal.url;
let import_wpadmin = decodedVal.adminname;
let import_wpadmin_pwd = decodedVal.adminpwd;
let import_wpgroups = decodedVal.wpgroups;
let import_uniqueId = decodedVal.uniqueId;
let import_http_username = decodedVal.http_user;
let import_http_password = decodedVal.http_pass;
let import_verify_certificate = decodedVal.verify_certificate;
if (typeof (import_wpname) == "undefined")
import_wpname = '';
if (typeof (import_wpurl) == "undefined")
import_wpurl = '';
if (typeof (import_wpadmin) == "undefined")
import_wpadmin = '';
if (typeof (import_wpgroups) == "undefined")
import_wpgroups = '';
if (typeof (import_uniqueId) == "undefined")
import_uniqueId = '';
if (typeof (import_wpadmin_pwd) == "undefined") {
import_wpadmin_pwd = '';
}
jQuery('#mainwp_managesites_import_logging .log').append('
${mainwp_managesites_import_sites_render_input(
row_index,
"site_url",
"mainwp-managesites-import-site-url-" + row_index,
"mainwp-managesites-import-site-url"
)}
${mainwp_managesites_import_sites_render_input(
row_index,
"site_name",
"mainwp-managesites-import-site-name-" + row_index,
"mainwp-managesites-import-site-name"
)}
${mainwp_managesites_import_sites_render_input(
row_index,
"admin_name",
"mainwp-managesites-import-admin-name-" + row_index,
"mainwp-managesites-import-admin-name"
)}
${mainwp_managesites_import_sites_render_input(
row_index,
"admin_password",
"mainwp-managesites-import-admin-password-" + row_index,
"mainwp-managesites-import-admin-password",
"",
"",
"password"
)}
${mainwp_managesites_import_sites_render_column(
row_index,
"Tag",
"tag",
"tag"
)}
${mainwp_managesites_import_sites_render_column(
row_index,
"Security ID",
"security_id",
"security-id"
)}
${mainwp_managesites_import_sites_render_column(
row_index,
"HTTP Username",
"http_username",
"http-username"
)}
${mainwp_managesites_import_sites_render_column(
row_index,
"HTTP Password",
"http_password",
"http-password"
)}
${mainwp_managesites_import_sites_render_column(
row_index,
"Verify Certificate",
"verify_certificate",
"verify-certificate",
"number",
1
)}
${mainwp_managesites_import_sites_render_column(
row_index,
"SSL Version",
"ssl_version",
"ssl-version",
"",
"auto"
)}
`;
};
// Add new row by clicking Add New Row button.
const mainwp_managesites_import_sites_add_row = function (row_index) {
row_index--;
return `
${mainwp_managesites_import_sites_render_input(
row_index,
"site_url",
"mainwp-managesites-import-site-url-" + row_index,
"mainwp-managesites-import-site-url"
)}
${mainwp_managesites_import_sites_render_input(
row_index,
"site_name",
"mainwp-managesites-import-site-name-" + row_index,
"mainwp-managesites-import-site-name"
)}
${mainwp_managesites_import_sites_render_input(
row_index,
"admin_name",
"mainwp-managesites-import-admin-name-" + row_index,
"mainwp-managesites-import-admin-name"
)}
${mainwp_managesites_import_sites_render_input(
row_index,
"admin_password",
"mainwp-managesites-import-admin-password-" + row_index,
"mainwp-managesites-import-admin-password",
"",
"",
"password"
)}
${mainwp_managesites_import_sites_render_input(
row_index,
"tag",
"mainwp-managesites-import-tag-" + row_index,
"mainwp-managesites-import-tag"
)}
${mainwp_managesites_import_sites_render_input(
row_index,
"security_id",
"mainwp-managesites-import-security-id-" + row_index,
"mainwp-managesites-import-security-id"
)}
${mainwp_managesites_import_sites_render_input(
row_index,
"http_username",
"mainwp-managesites-import-http-username-" + row_index,
"mainwp-managesites-import-http-username"
)}
${mainwp_managesites_import_sites_render_input(
row_index,
"http_password",
"mainwp-managesites-import-http-password-" + row_index,
"mainwp-managesites-import-http-password"
)}
${mainwp_managesites_import_sites_render_input(
row_index,
"verify_certificate",
"mainwp-managesites-import-verify-certificate-" + row_index,
"mainwp-managesites-import-verify-certificate",
"number",
1
)}
${mainwp_managesites_import_sites_render_input(
row_index,
"ssl_version",
"mainwp-managesites-import-ssl-version" + row_index,
"mainwp-managesites-import-ssl-version",
"",
"auto"
)}
${mainwp_managesites_import_sites_render_button_remove(row_index)}
`;
};
// Render column.
const mainwp_managesites_import_sites_render_column = function (
row_index,
label,
input_name,
input_class,
input_type = "",
value = ""
) {
return `