# HG changeset patch # User Dan # Date 1272679857 14400 # Node ID 330f4de4c9379b80b41f9abc68492425b1a08a6d # Parent db42b7c50e57258e64d5a99715f9f813c04957c0 Added an ajax auto check for the path to ImageMagick in Admin:UploadConfig diff -r db42b7c50e57 -r 330f4de4c937 includes/clientside/static/ajax.js --- a/includes/clientside/static/ajax.js Mon Apr 19 18:07:43 2010 -0400 +++ b/includes/clientside/static/ajax.js Fri Apr 30 22:10:57 2010 -0400 @@ -1786,3 +1786,35 @@ } }); } + +window.ajaxVerifyFilePath = function(input) +{ + input._lastkeyup = new Date(); + // 500ms between keyup and trigger + setTimeout(function() + { + var now = new Date(); + if ( input._lastkeyup.getTime() + 499 < now.getTime() ) + { + // do the ajaxverify + ajaxVerifyFilePathReal(input); + } + }, 500); +} + +window.ajaxVerifyFilePathReal = function(input) +{ + if ( input.nextSibling && input.nextSibling.tagName == 'IMG' ) + input.parentNode.removeChild(input.nextSibling); + var img = document.createElement('img'); + img.src = cdnPath + '/images/loading.gif'; + img.hspace = '7'; + ajaxPost(makeUrlNS('Admin', 'UploadConfig', 'act=verify_path'), 'path=' + ajaxEscape(input.value), function(ajax) + { + if ( ajax.readyState == 4 && ajax.status == 200 ) + { + img.src = ( ajax.responseText == 'true' ) ? cdnPath + '/images/mini-success.png' : cdnPath + '/images/mini-error.png'; + } + }); + insertAfter(input.parentNode, img, input); +} diff -r db42b7c50e57 -r 330f4de4c937 plugins/SpecialAdmin.php --- a/plugins/SpecialAdmin.php Mon Apr 19 18:07:43 2010 -0400 +++ b/plugins/SpecialAdmin.php Fri Apr 30 22:10:57 2010 -0400 @@ -1110,6 +1110,14 @@ return; } + if ( isset($_GET['act']) && $_GET['act'] == 'verify_path' ) + { + $path = $_POST['path']; + $result = @file_exists($path) && @is_file($path) && @is_executable($path); + echo $result ? 'true' : 'false'; + return; + } + if(isset($_POST['save'])) { if(isset($_POST['enable_uploads']) && getConfig('enable_uploads') != '1') @@ -1218,7 +1226,7 @@ get('acpup_field_magick_enable'); ?>
- get('acpup_field_magick_path'); ?>
+ get('acpup_field_magick_path'); ?>
get('acpup_field_magick_path_hint'); ?>