From 1d7ef1603a65340a9e64a7b7ca398245bc69f2af Mon Sep 17 00:00:00 2001 From: Matthias Glienke Date: Wed, 19 Dec 2012 15:57:07 +0100 Subject: [PATCH] added is_writable() for #38 Check if is_writable() on loading contents of folders. Be carful - currently this is only updated, when a folder is reloaded. --- upload/backend/media/ajax_get_contents.php | 3 ++- upload/backend/media/upload.php | 15 ++++++++------- upload/templates/freshcat/js/backend_media.js | 14 ++++++++++++-- .../freshcat/templates/form_upload_files.lte | 1 + 4 files changed, 23 insertions(+), 10 deletions(-) diff --git a/upload/backend/media/ajax_get_contents.php b/upload/backend/media/ajax_get_contents.php index aefa940b..d7c0148b 100644 --- a/upload/backend/media/ajax_get_contents.php +++ b/upload/backend/media/ajax_get_contents.php @@ -105,7 +105,8 @@ function byte_convert($bytes) if ( is_dir( $load_path ) ) { - $ajax['is_folder'] = true; + $ajax['is_folder'] = true; + $ajax['is_writable'] = is_writable($load_path); // ======================================== // ! Get contents for the intitial folder // ======================================== diff --git a/upload/backend/media/upload.php b/upload/backend/media/upload.php index 798cc3f3..f62b203c 100755 --- a/upload/backend/media/upload.php +++ b/upload/backend/media/upload.php @@ -70,23 +70,25 @@ $allowed_file_types = explode(',', RENAME_FILES_ON_UPLOAD); foreach ( $upload_counter as $file_id ) { - $file_name = 'upload_' . $file_id; + $field_name = 'upload_' . $file_id; - if ( isset( $_FILES[$file_name]['name'] ) && $_FILES[$file_name]['name'] != '' ) + if ( isset( $_FILES[$field_name]['name'] ) && $_FILES[$field_name]['name'] != '' ) { // =========================================== // ! Get file extension of the uploaded file // =========================================== - $file_extension = (strtolower( pathinfo( $_FILES[$file_name]['name'], PATHINFO_EXTENSION ) ) == '') ? false : strtolower( pathinfo($_FILES[$file_name]['name'], PATHINFO_EXTENSION)); + $file_extension = (strtolower( pathinfo( $_FILES[$field_name]['name'], PATHINFO_EXTENSION ) ) == '') ? false : strtolower( pathinfo($_FILES[$field_name]['name'], PATHINFO_EXTENSION)); // ====================================== // ! Check if file extension is allowed // ====================================== if ( isset( $file_extension ) && in_array( $file_extension, $allowed_file_types ) ) { + echo $field_name; // ======================================= // ! Try to include the upload.class.php // ======================================= - $files = $admin->get_helper('LEPTON_Helper_Upload', $_FILES[$file_name]); + $files = $admin->get_helper( 'Upload', $_FILES[$field_name] ); + echo $files->_handles['Upload']['__args__']; if ( $files->uploaded ) { @@ -99,7 +101,6 @@ { $files->file_overwrite = false; } - // Replace with allowed images //$files->allowed = array('image/*'); @@ -151,14 +152,14 @@ $admin->print_error( 'An error occurred: ' . $files->error, false ); } } - else $admin->print_error( 'An error occured:' . $files->error, $files->log, false ); + else $admin->print_error( 'An error occurred: ' . $files->error, $files->log, false ); } else $admin->print_error( 'No file extension were found.', false ); } } $admin->print_success('All files have been uploaded successfully.', false ); } -else $admin->print_error( 'File couldn\'t be uploaded. Maybe it is too big?', false ); +else $admin->print_error( 'File could not be uploaded. Maybe it is too big?', false ); // ====================== // ! Print admin footer // ====================== diff --git a/upload/templates/freshcat/js/backend_media.js b/upload/templates/freshcat/js/backend_media.js index fd8c7a35..674e15f7 100644 --- a/upload/templates/freshcat/js/backend_media.js +++ b/upload/templates/freshcat/js/backend_media.js @@ -173,6 +173,16 @@ function reload_folder( current_ul, folder_path, load_url ) current_ul.find('.fc_name_short p').smartTruncation({ 'truncateCenter' : true }); // Activate all click-events to the new added list set_media_functions( current_ul ); + console.log(data.is_writable); + if ( !data.is_writable ) + { + $('#fc_media_upload_not_writable').removeClass('hidden'); + $('#fc_media_index_upload').addClass('hidden'); + } + else { + $('#fc_media_index_upload').removeClass('hidden'); + $('#fc_media_upload_not_writable').addClass('hidden'); + } } else { @@ -608,7 +618,7 @@ jQuery(document).ready(function() }); // Activate the upload form to send data with ajax - dialog_form( +/* dialog_form( $('#fc_media_index_upload'), function( data ) { var current_ul = get_active_media(), @@ -631,5 +641,5 @@ jQuery(document).ready(function() $('#fc_media_index_upload').find('input[type="reset"]').click(); } - ); + );*/ }); \ No newline at end of file diff --git a/upload/templates/freshcat/templates/form_upload_files.lte b/upload/templates/freshcat/templates/form_upload_files.lte index 2ea4f687..b65040e3 100644 --- a/upload/templates/freshcat/templates/form_upload_files.lte +++ b/upload/templates/freshcat/templates/form_upload_files.lte @@ -1,5 +1,6 @@