/
home
/
suroeste
/
public_html
/
wp-content
/
plugins
/
akeebabackupwp
/
app
/
media
/
js
/
solo
/
/home/suroeste/public_html/wp-content/plugins/akeebabackupwp/app/media/js/solo
mkdir
upload
Name
Size
Mode
Actions
ajax.js
9696
0644
edit
dl
rm
ajax.min.js
3438
0644
edit
dl
rm
ajax.min.js.map
17483
0644
edit
dl
rm
backup.min.js
10466
0644
edit
dl
rm
backup.min.js.map
36399
0644
edit
dl
rm
browser.js
852
0644
edit
dl
rm
browser.min.js
547
0644
edit
dl
rm
browser.min.js.map
1952
0644
edit
dl
rm
configuration.min.js
36980
0644
edit
dl
rm
configuration.min.js.map
137014
0644
edit
dl
rm
dbfilters.min.js
7751
0644
edit
dl
rm
dbfilters.min.js.map
28768
0644
edit
dl
rm
discover.js
717
0644
edit
dl
rm
discover.min.js
442
0644
edit
dl
rm
discover.min.js.map
1581
0644
edit
dl
rm
extradirs.min.js.map
23454
0644
edit
dl
rm
fsfilters.min.js
15091
0644
edit
dl
rm
fsfilters.min.js.map
60366
0644
edit
dl
rm
gui-helpers.min.js
7604
0644
edit
dl
rm
gui-helpers.min.js.map
40838
0644
edit
dl
rm
log.js
872
0644
edit
dl
rm
log.min.js
568
0644
edit
dl
rm
log.min.js.map
1967
0644
edit
dl
rm
main.js
6469
0644
edit
dl
rm
main.min.js
3734
0644
edit
dl
rm
main.min.js.map
12115
0644
edit
dl
rm
manage.js
5914
0644
edit
dl
rm
manage.min.js
3541
0644
edit
dl
rm
manage.min.js.map
11993
0644
edit
dl
rm
modal.js
11029
0644
edit
dl
rm
modal.min.js
4882
0644
edit
dl
rm
modal.min.js.map
22351
0644
edit
dl
rm
multidb.min.js.map
31604
0644
edit
dl
rm
regexdbfilters.min.js.map
21450
0644
edit
dl
rm
regexfsfilters.min.js.map
21737
0644
edit
dl
rm
remotefiles.js
1700
0644
edit
dl
rm
remotefiles.min.js
790
0644
edit
dl
rm
remotefiles.min.js.map
2917
0644
edit
dl
rm
restore.min.js.map
26410
0644
edit
dl
rm
s3import.js
2806
0644
edit
dl
rm
s3import.min.js
1621
0644
edit
dl
rm
s3import.min.js.map
5608
0644
edit
dl
rm
setup.min.js.map
40294
0644
edit
dl
rm
showon.js
7583
0644
edit
dl
rm
showon.min.js
4206
0644
edit
dl
rm
showon.min.js.map
15553
0644
edit
dl
rm
system.min.js
14806
0644
edit
dl
rm
system.min.js.map
81766
0644
edit
dl
rm
tooltip.js
8070
0644
edit
dl
rm
tooltip.min.js
3726
0644
edit
dl
rm
tooltip.min.js.map
15163
0644
edit
dl
rm
transfer.js
18711
0644
edit
dl
rm
transfer.min.js.map
35219
0644
edit
dl
rm
update.min.js
5583
0644
edit
dl
rm
update.min.js.map
20544
0644
edit
dl
rm
upload.js
1051
0644
edit
dl
rm
upload.min.js
496
0644
edit
dl
rm
upload.min.js.map
2108
0644
edit
dl
rm
users.js
913
0644
edit
dl
rm
users.min.js.map
2118
0644
edit
dl
rm
wizard.min.js
10656
0644
edit
dl
rm
wizard.min.js.map
32501
0644
edit
dl
rm
Edit:
/home/suroeste/public_html/wp-content/plugins/akeebabackupwp/app/media/js/solo/setup.min.js.map
(40294B)
{"version":3,"file":"setup.min.js","names":["akeeba","Setup","URLs","FtpBrowser","params","SftpBrowser","FtpTest","SftpTest","onFsDriverClick","driver","document","getElementById","value","elFtpOptions","style","display","callback","path","charlist","replace","re","RegExp","key","initialise","paramsKey","host","port","username","password","passive","ssl","directory","open","ftp_dialog_element","System","addEventListener","_typeof","Modal","close","inherit","width","innerHTML","empty","data","ajaxURL","ftpBrowser","doAjax","elBreadCrumbs","elFTPBrowserFolderList","error","breadcrumbs","relativePath","addCrumb","Text","_","i","length","crumb","list","item","createLink","message","label","container","ftpObject","row","createElement","cell","appendChild","myElement","innerText","li","myLink","e","preventDefault","returnValue","privKey","pubKey","privkey","pubkey","sftpBrowser","elSFTPBrowserFolderList","elSFTPCrumbs","Solo","Configuration","testConnection","buttonKey","configKey","button","setAttribute","user","pass","initdir","usessl","testFtp","res","b","removeAttribute","testFtpDialogBodyOk","testFtpDialogBodyFail","testFtpDialogLabel","status","g","testSftp","removeAttr","initFtpSftpBrowser","testFtpSftpConnection"],"sources":["setup.js"],"sourcesContent":["/**\n * @package solo\n * @copyright Copyright (c)2014-2024 Nicholas K. Dionysopoulos / Akeeba Ltd\n * @license GNU General Public License version 3, or later\n */\n\nif (typeof akeeba === \"undefined\")\n{\n var akeeba = {};\n}\n\nif (typeof akeeba.Setup === \"undefined\")\n{\n akeeba.Setup = {};\n akeeba.Setup.URLs = {};\n akeeba.Setup.FtpBrowser = {\n params: {}\n };\n akeeba.Setup.SftpBrowser = {\n params: {}\n };\n akeeba.Setup.FtpTest = {};\n akeeba.Setup.SftpTest = {};\n}\n\nakeeba.Setup.onFsDriverClick = function (e)\n{\n var driver = document.getElementById(\"fs_driver\").value;\n var elFtpOptions = document.getElementById(\"ftp_options\");\n\n if ((driver === \"ftp\") || (driver === \"sftp\"))\n {\n elFtpOptions.style.display = \"block\";\n }\n else\n {\n elFtpOptions.style.display = \"none\";\n }\n};\n\n/**\n * FTP browser callback, used to set the FTP root directory in an element\n *\n * @param path The path returned by the browser\n */\nakeeba.Setup.FtpBrowser.callback = function (path)\n{\n var charlist = (\"/\").replace(/([\\[\\]\\(\\)\\.\\?\\/\\*\\{\\}\\+\\$\\^\\:])/g, \"$1\");\n var re = new RegExp(\"^[\" + charlist + \"]+\", \"g\");\n path = \"/\" + (path + \"\").replace(re, \"\");\n\n document.getElementById(akeeba.Setup.FtpBrowser.params.key).value = path;\n};\n\n/**\n * Initialises an FTP folder browser\n *\n * @param key The id of the field holding the FTP directory we're outputting\n * @param paramsKey The key prefix of the fields holding FTP connection information\n */\nakeeba.Setup.FtpBrowser.initialise = function (key, paramsKey)\n{\n akeeba.Setup.FtpBrowser.params.host = document.getElementById(paramsKey + \"_host\").value;\n akeeba.Setup.FtpBrowser.params.port = document.getElementById(paramsKey + \"_port\").value;\n akeeba.Setup.FtpBrowser.params.username = document.getElementById(paramsKey + \"_username\").value;\n akeeba.Setup.FtpBrowser.params.password = document.getElementById(paramsKey + \"_password\").value;\n akeeba.Setup.FtpBrowser.params.passive = true;\n akeeba.Setup.FtpBrowser.params.ssl = false;\n akeeba.Setup.FtpBrowser.params.directory = document.getElementById(paramsKey + \"_directory\").value;\n\n akeeba.Setup.FtpBrowser.params.key = key;\n\n akeeba.Setup.FtpBrowser.open();\n};\n\n/**\n * Opens the FTP directory browser\n */\nakeeba.Setup.FtpBrowser.open = function ()\n{\n var ftp_dialog_element = document.getElementById(\"ftpdialog\");\n\n ftp_dialog_element.style.display = \"block\";\n\n akeeba.System.addEventListener(\"ftpdialogOkButton\", \"click\", function (e)\n {\n akeeba.Setup.FtpBrowser.callback(akeeba.Setup.FtpBrowser.params.directory);\n\n if ((typeof akeeba.Setup.FtpBrowser.Modal === \"object\") && akeeba.Setup.FtpBrowser.Modal.close)\n {\n akeeba.Setup.FtpBrowser.Modal.close();\n }\n });\n\n akeeba.System.addEventListener(document.getElementById(\"ftpdialogCancelButton\"), \"click\", function (e)\n {\n if ((typeof akeeba.Setup.FtpBrowser.Modal === \"object\") && akeeba.Setup.FtpBrowser.Modal.close)\n {\n akeeba.Setup.FtpBrowser.Modal.close();\n }\n });\n\n akeeba.Setup.FtpBrowser.Modal = akeeba.Modal.open({\n inherit: ftp_dialog_element,\n width: \"80%\"\n });\n\n document.getElementById(\"ftpBrowserErrorContainer\").style.display = \"none\";\n document.getElementById(\"ftpBrowserFolderList\").innerHTML = \"\";\n document.getElementById(\"ftpBrowserCrumbs\").innerHTML = \"\";\n\n if (empty(akeeba.Setup.FtpBrowser.params.directory))\n {\n akeeba.Setup.FtpBrowser.params.directory = \"\";\n }\n\n var data = {\n \"host\": akeeba.Setup.FtpBrowser.params.host,\n \"port\": akeeba.Setup.FtpBrowser.params.port,\n \"username\": akeeba.Setup.FtpBrowser.params.username,\n \"password\": akeeba.Setup.FtpBrowser.params.password,\n \"passive\": (akeeba.Setup.FtpBrowser.params.passive ? 1 : 0),\n \"ssl\": (akeeba.Setup.FtpBrowser.params.ssl ? 1 : 0),\n \"directory\": akeeba.Setup.FtpBrowser.params.directory\n };\n\n // URL to load the browser\n data.ajaxURL = akeeba.Setup.URLs.ftpBrowser;\n\n // Do AJAX call & Render results\n akeeba.System.doAjax(\n data,\n function (data)\n {\n var elBreadCrumbs = document.getElementById(\"ak_crumbs2\");\n var elFTPBrowserFolderList = document.getElementById(\"ftpBrowserFolderList\");\n\n elFTPBrowserFolderList.style.display = \"none\";\n elBreadCrumbs.style.display = \"none\";\n\n if (data.error !== false)\n {\n // An error occured\n document.getElementById(\"ftpBrowserError\").innerHTML = data.error;\n document.getElementById(\"ftpBrowserErrorContainer\").style.display = \"block\";\n\n return;\n }\n\n // Create the interface\n document.getElementById(\"ftpBrowserErrorContainer\").style.display = \"none\";\n\n // Display the crumbs\n if (!empty(data.breadcrumbs))\n {\n elBreadCrumbs.style.display = \"block\";\n elBreadCrumbs.innerHTML = \"\";\n var relativePath = \"/\";\n\n akeeba.Setup.FtpBrowser.addCrumb(akeeba.System.Text._(\"SOLO_COMMON_LBL_ROOT\"), \"/\", elBreadCrumbs);\n\n for (i = 0; i < data.breadcrumbs.length; i++)\n {\n var crumb = data.breadcrumbs[i];\n\n relativePath += \"/\" + crumb;\n\n akeeba.Setup.FtpBrowser.addCrumb(crumb, relativePath, elBreadCrumbs);\n }\n }\n\n // Display the list of directories\n if (!empty(data.list))\n {\n elFTPBrowserFolderList.style.display = \"block\";\n\n /**\n * If the directory in the browser is empty, let's inject it with the parent dir, otherwise if the\n * user immediately clicks on \"Use\" gets a wrong path.\n */\n if (!akeeba.Setup.FtpBrowser.params.directory)\n {\n akeeba.Setup.FtpBrowser.params.directory = data.directory;\n }\n\n for (i = 0; i < data.list.length; i++)\n {\n var item = data.list[i];\n\n akeeba.Setup.FtpBrowser.createLink(data.directory + \"/\" + item, item, elFTPBrowserFolderList);\n }\n }\n },\n function (message)\n {\n document.getElementById(\"ftpBrowserError\").innerHTML = message;\n document.getElementById(\"ftpBrowserErrorContainer\").style.display = \"block\";\n document.getElementById(\"ftpBrowserFolderList\").style.display = \"none\";\n document.getElementById(\"ftpBrowserCrumbs\").style.display = \"none\";\n },\n false\n );\n};\n\n/**\n * Creates a directory link for the FTP browser UI\n *\n * @param path The directory to link to\n * @param label How to display it\n * @param container The containing element\n * @param ftpObject FTP configuration information\n */\nakeeba.Setup.FtpBrowser.createLink = function (path, label, container, ftpObject)\n{\n if (typeof ftpObject === \"undefined\")\n {\n ftpObject = akeeba.Setup.FtpBrowser;\n }\n\n var row = document.createElement(\"tr\");\n var cell = document.createElement(\"td\");\n row.appendChild(cell);\n\n var myElement = document.createElement(\"a\");\n myElement.innerText = label;\n akeeba.System.addEventListener(myElement, \"click\", function (e)\n {\n ftpObject.params.directory = path;\n ftpObject.open();\n });\n cell.appendChild(myElement);\n\n container.appendChild(row);\n};\n\n/**\n * Adds a breadcrumb to the FTP browser\n *\n * @param crumb How to display it\n * @param relativePath The relative path to the current directory\n * @param container The containing element\n * @param ftpObject FTP configuration information\n */\nakeeba.Setup.FtpBrowser.addCrumb = function (crumb, relativePath, container, ftpObject)\n{\n if (typeof ftpObject == \"undefined\")\n {\n ftpObject = akeeba.Setup.FtpBrowser;\n }\n\n var li = document.createElement(\"li\");\n\n var myLink = document.createElement(\"a\");\n myLink.innerHTML = crumb;\n\n akeeba.System.addEventListener(myLink, \"click\", function (e)\n {\n ftpObject.params.directory = relativePath;\n ftpObject.open();\n\n if (e.preventDefault)\n {\n e.preventDefault();\n }\n else\n {\n e.returnValue = false;\n }\n });\n\n li.appendChild(myLink);\n container.appendChild(li);\n};\n\n/**\n * Initialises an SFTP folder browser\n *\n * @param key The Akeeba Engine configuration key of the field holding the SFTP directory we're outputting\n * @param paramsKey The Akeeba Engine configuration key prefix of the fields holding SFTP connection information\n */\nakeeba.Setup.SftpBrowser.initialise = function (key, paramsKey)\n{\n akeeba.Setup.SftpBrowser.params.host = document.getElementById(paramsKey + \"_host\").value;\n akeeba.Setup.SftpBrowser.params.port = document.getElementById(paramsKey + \"_port\").value;\n akeeba.Setup.SftpBrowser.params.username = document.getElementById(paramsKey + \"_username\").value;\n akeeba.Setup.SftpBrowser.params.password = document.getElementById(paramsKey + \"_password\").value;\n akeeba.Setup.SftpBrowser.params.directory = document.getElementById(paramsKey + \"_directory\").value;\n akeeba.Setup.SftpBrowser.params.privKey = \"\";\n akeeba.Setup.SftpBrowser.params.pubKey = \"\";\n\n akeeba.Setup.FtpBrowser.params.key = key;\n\n akeeba.Setup.SftpBrowser.open();\n};\n\n/**\n * Opens the SFTP directory browser\n */\nakeeba.Setup.SftpBrowser.open = function ()\n{\n var ftp_dialog_element = document.getElementById(\"sftpdialog\");\n\n ftp_dialog_element.style.display = \"block\";\n\n akeeba.System.addEventListener(document.getElementById(\"sftpdialogOkButton\"), \"click\", function (e)\n {\n akeeba.Setup.SftpBrowser.callback(akeeba.Setup.SftpBrowser.params.directory);\n\n if ((typeof akeeba.Setup.SftpBrowser.Modal === \"object\") && akeeba.Setup.SftpBrowser.Modal.close)\n {\n akeeba.Setup.SftpBrowser.Modal.close();\n }\n });\n\n akeeba.System.addEventListener(document.getElementById(\"sftpdialogCancelButton\"), \"click\", function (e)\n {\n if ((typeof akeeba.Setup.SftpBrowser.Modal === \"object\") && akeeba.Setup.SftpBrowser.Modal.close)\n {\n akeeba.Setup.SftpBrowser.Modal.close();\n }\n });\n\n akeeba.Setup.SftpBrowser.Modal = akeeba.Modal.open({\n inherit: ftp_dialog_element,\n width: \"80%\"\n });\n\n document.getElementById(\"sftpBrowserErrorContainer\").style.display = \"none\";\n document.getElementById(\"sftpBrowserFolderList\").innerHTML = \"\";\n document.getElementById(\"sftpBrowserCrumbs\").innerHTML = \"\";\n\n if (empty(akeeba.Setup.SftpBrowser.params.directory))\n {\n akeeba.Setup.SftpBrowser.params.directory = \"\";\n }\n\n var data = {\n \"host\": akeeba.Setup.SftpBrowser.params.host,\n \"port\": akeeba.Setup.SftpBrowser.params.port,\n \"username\": akeeba.Setup.SftpBrowser.params.username,\n \"password\": akeeba.Setup.SftpBrowser.params.password,\n \"directory\": akeeba.Setup.SftpBrowser.params.directory,\n \"privkey\": akeeba.Setup.SftpBrowser.params.privKey,\n \"pubkey\": akeeba.Setup.SftpBrowser.params.pubKey\n };\n\n // URL to load the browser\n data.ajaxURL = akeeba.Setup.URLs.sftpBrowser;\n\n // Do AJAX call & Render results\n akeeba.System.doAjax(\n data,\n function (data)\n {\n var elSFTPBrowserFolderList = document.getElementById(\"sftpBrowserFolderList\");\n var elSFTPCrumbs = document.getElementById(\"ak_scrumbs\");\n\n elSFTPBrowserFolderList.style.display = \"none\";\n elSFTPCrumbs.style.display = \"none\";\n\n if (data.error != false)\n {\n // An error occured\n document.getElementById(\"sftpBrowserError\").innerHTML = data.error;\n document.getElementById(\"sftpBrowserErrorContainer\").style.display = \"block\";\n\n return;\n }\n\n // Create the interface\n document.getElementById(\"ftpBrowserErrorContainer\").style.display = \"none\";\n\n // Display the crumbs\n if (!empty(data.breadcrumbs))\n {\n elSFTPCrumbs.style.display = \"block\";\n elSFTPCrumbs.innerHTML = \"\";\n var relativePath = \"/\";\n\n akeeba.Setup.FtpBrowser.addCrumb(\n akeeba.System.Text._(\"SOLO_COMMON_LBL_ROOT\"), \"/\", elSFTPCrumbs, akeeba.Setup.SftpBrowser);\n\n for (var i = 0; i < data.breadcrumbs.length; i++)\n {\n var crumb = data.breadcrumbs[i];\n\n relativePath += \"/\" + crumb;\n\n akeeba.Setup.FtpBrowser.addCrumb(crumb, relativePath, elSFTPCrumbs, akeeba.Setup.SftpBrowser);\n }\n }\n\n // Display the list of directories\n if (!empty(data.list))\n {\n elSFTPBrowserFolderList.style.display = \"block\";\n\n // If the directory in the browser is empty, let's inject it with the parent dir, otherwise if the user\n // immediately clicks on \"Use\" gets a wrong path\n if (!akeeba.Solo.SftpBrowser.params.directory)\n {\n akeeba.Solo.SftpBrowser.params.directory = data.directory;\n }\n\n for (i = 0; i < data.list.length; i++)\n {\n var item = data.list[i];\n\n akeeba.Setup.FtpBrowser.createLink(\n data.directory + \"/\" + item, item, elSFTPBrowserFolderList, akeeba.Configuration.SftpBrowser);\n }\n }\n },\n function (message)\n {\n document.getElementById(\"sftpBrowserError\").innerHTML = message;\n document.getElementById(\"sftpBrowserErrorContainer\").style.display = \"block\";\n document.getElementById(\"sftpBrowserFolderList\").style.display = \"none\";\n document.getElementById(\"sftpBrowserCrumbs\").style.display = \"none\";\n },\n false\n );\n};\n\n/**\n * SFTP browser callback, used to set the FTP root directory in an element\n *\n * @param path The path returned by the browser\n */\nakeeba.Setup.SftpBrowser.callback = function (path)\n{\n var charlist = (\"/\").replace(/([\\[\\]\\(\\)\\.\\?\\/\\*\\{\\}\\+\\$\\^\\:])/g, \"$1\");\n var re = new RegExp(\"^[\" + charlist + \"]+\", \"g\");\n path = \"/\" + (path + \"\").replace(re, \"\");\n\n document.getElementById(akeeba.Setup.SftpBrowser.params.key).value = path;\n};\n\nakeeba.Setup.FtpTest.testConnection = function (buttonKey, configKey)\n{\n var button = document.getElementById(buttonKey);\n akeeba.Setup.FtpTest.buttonKey = buttonKey;\n\n button.setAttribute(\"disabled\", \"disabled\");\n\n var data = {\n host: document.getElementById(configKey + \"_host\").value,\n port: document.getElementById(configKey + \"_port\").value,\n user: document.getElementById(configKey + \"_username\").value,\n pass: document.getElementById(configKey + \"_password\").value,\n initdir: document.getElementById(configKey + \"_directory\").value,\n usessl: false,\n passive: true\n };\n\n // Construct the query\n data.ajaxURL = akeeba.Setup.URLs.testFtp;\n\n akeeba.System.doAjax(\n data,\n function (res)\n {\n var button = document.getElementById(akeeba.Setup.FtpTest.buttonKey);\n button.removeAttribute(\"disabled\");\n\n var testFtpDialogBodyOk = document.getElementById(\"testFtpDialogBodyOk\");\n var testFtpDialogBodyFail = document.getElementById(\"testFtpDialogBodyFail\");\n var testFtpDialogLabel = document.getElementById(\"testFtpDialogLabel\");\n\n testFtpDialogBodyOk.style.display = \"none\";\n testFtpDialogBodyFail.style.display = \"none\";\n\n if ((res?.status ?? false) === true)\n {\n testFtpDialogLabel.innerHTML = akeeba.System.Text._(\"COM_AKEEBA_CONFIG_DIRECTFTP_TEST_OK\");\n testFtpDialogBodyOk.innerHTML = akeeba.System.Text._(\"COM_AKEEBA_CONFIG_DIRECTFTP_TEST_FAIL\");\n testFtpDialogBodyOk.style.display = \"block\";\n testFtpDialogBodyFail.style.display = \"none\";\n }\n else\n {\n testFtpDialogLabel.innerHTML = akeeba.System.Text._(\"COM_AKEEBA_CONFIG_DIRECTFTP_TEST_FAIL\");\n testFtpDialogBodyFail.innerHTML = res?.status ?? '???';\n testFtpDialogBodyOk.style.display = \"none\";\n testFtpDialogBodyFail.style.display = \"block\";\n }\n\n akeeba.Setup.FtpTest.Modal = akeeba.Modal.open({\n inherit: document.getElementById(\"testFtpDialog\"),\n width: \"80%\"\n });\n }, null, false, 15000\n )\n};\n\nakeeba.Setup.SftpTest.testConnection = function (buttonKey, configKey)\n{\n var button = document.getElementById(buttonKey);\n akeeba.Setup.SftpTest.buttonKey = buttonKey;\n\n button.setAttribute(\"disabled\", \"disabled\");\n\n var data = {\n host: document.getElementById(configKey + \"_host\").value,\n port: document.getElementById(configKey + \"_port\").value,\n user: document.getElementById(configKey + \"_username\").value,\n pass: document.getElementById(configKey + \"_password\").value,\n initdir: document.getElementById(configKey + \"_directory\").value,\n privkey: \"\",\n pubkey: \"\"\n };\n\n // Construct the query\n data.ajaxURL = akeeba.Setup.URLs.testSftp;\n\n akeeba.System.doAjax(\n data,\n function (res)\n {\n var button = document.getElementById(akeeba.Setup.SftpTest.buttonKey);\n button.removeAttr(\"disabled\");\n\n var testFtpDialogBodyOk = document.getElementById(\"testFtpDialogBodyOk\");\n var testFtpDialogBodyFail = document.getElementById(\"testFtpDialogBodyFail\");\n var testFtpDialogLabel = document.getElementById(\"testFtpDialogLabel\");\n\n testFtpDialogBodyOk.style.display = \"none\";\n testFtpDialogBodyFail.style.display = \"none\";\n\n if ((res?.status ?? false) === true)\n {\n testFtpDialogLabel.innerHTML = akeeba.System.Text._(\"COM_AKEEBA_CONFIG_DIRECTSFTP_TEST_OK\");\n testFtpDialogBodyOk.innerHTML = akeeba.System.Text._(\"COM_AKEEBA_CONFIG_DIRECTSFTP_TEST_OK\");\n testFtpDialogBodyOk.style.display = \"block\";\n testFtpDialogBodyFail.style.display = \"none\";\n }\n else\n {\n testFtpDialogLabel.innerHTML = akeeba.System.Text._(\"COM_AKEEBA_CONFIG_DIRECTSFTP_TEST_FAIL\");\n testFtpDialogBodyFail.innerHTML = res?.status ?? '???';\n testFtpDialogBodyOk.style.display = \"none\";\n testFtpDialogBodyFail.style.display = \"block\";\n }\n\n akeeba.Setup.FtpTest.Modal = akeeba.Modal.open({\n inherit: document.getElementById(\"testFtpDialog\"),\n width: \"80%\"\n });\n }, null, false, 15000\n )\n};\n\n\nakeeba.Setup.initFtpSftpBrowser = function ()\n{\n var driver = document.getElementById(\"fs_driver\").value;\n\n if (driver === \"ftp\")\n {\n akeeba.Setup.FtpBrowser.initialise(\"fs_directory\", \"fs\")\n }\n else if (driver === \"sftp\")\n {\n akeeba.Setup.SftpBrowser.initialise(\"fs_directory\", \"fs\")\n }\n\n return false;\n};\n\nakeeba.Setup.testFtpSftpConnection = function ()\n{\n var driver = document.getElementById(\"fs_driver\").value;\n\n if (driver === \"ftp\")\n {\n akeeba.Setup.FtpTest.testConnection(\"btnFtpTest\", \"fs\");\n }\n else if (driver === \"sftp\")\n {\n akeeba.Setup.SftpTest.testConnection(\"btnFtpTest\", \"fs\");\n }\n\n return false;\n};"],"mappings":"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"}
Save
cmd:
run