diff --git a/admin/include/photos_add_direct_process.inc.php b/admin/include/photos_add_direct_process.inc.php index 27cb0b9a1..15c7abebb 100644 --- a/admin/include/photos_add_direct_process.inc.php +++ b/admin/include/photos_add_direct_process.inc.php @@ -43,44 +43,7 @@ if (isset($_GET['processed'])) ); } - $category_id = null; - if (!isset($_POST['category_type'])) - { - // nothing to do, we certainly have the post_max_size issue - } - elseif ('existing' == $_POST['category_type']) - { - $category_id = $_POST['category']; - } - elseif ('new' == $_POST['category_type']) - { - $output_create = create_virtual_category( - $_POST['category_name'], - (0 == $_POST['category_parent'] ? null : $_POST['category_parent']) - ); - - $category_id = $output_create['id']; - - if (isset($output_create['error'])) - { - array_push($page['errors'], $output_create['error']); - } - else - { - $category_name = get_cat_display_name_from_id($category_id, 'admin.php?page=cat_modify&cat_id='); - // information - array_push( - $page['infos'], - sprintf( - l10n('Album "%s" has been added'), - ''.$category_name.'' - ) - ); - // TODO: add the onclick="window.open(this.href); return false;" - // attribute with jQuery on upload.tpl side for href containing - // "cat_modify" - } - } + $category_id = $_POST['category']; $image_ids = array(); @@ -206,20 +169,6 @@ if (isset($_GET['processed'])) if (isset($_SESSION['uploads'][ $_POST['upload_id'] ])) { $image_ids = $_SESSION['uploads'][ $_POST['upload_id'] ]; - - associate_images_to_categories( - $image_ids, - array($category_id) - ); - - $query = ' -UPDATE '.IMAGES_TABLE.' - SET level = '.$_POST['level'].' - WHERE id IN ('.implode(', ', $image_ids).') -;'; - pwg_query($query); - - invalidate_user_cache(); } } @@ -291,28 +240,25 @@ SELECT ); } - if ('existing' == $_POST['category_type']) - { - $query = ' + $query = ' SELECT COUNT(*) FROM '.IMAGE_CATEGORY_TABLE.' WHERE category_id = '.$category_id.' ;'; - list($count) = pwg_db_fetch_row(pwg_query($query)); - $category_name = get_cat_display_name_from_id($category_id, 'admin.php?page=cat_modify&cat_id='); - - // information - array_push( - $page['infos'], - sprintf( - l10n('Album "%s" now contains %d photos'), - ''.$category_name.'', - $count - ) - ); - } - + list($count) = pwg_db_fetch_row(pwg_query($query)); + $category_name = get_cat_display_name_from_id($category_id, 'admin.php?page=cat_modify&cat_id='); + + // information + array_push( + $page['infos'], + sprintf( + l10n('Album "%s" now contains %d photos'), + ''.$category_name.'', + $count + ) + ); + $page['batch_link'] = PHOTOS_ADD_BASE_URL.'&batch='.implode(',', $image_ids); } } diff --git a/admin/include/uploadify/uploadify.php b/admin/include/uploadify/uploadify.php index 8b3f49bb5..948280d90 100644 --- a/admin/include/uploadify/uploadify.php +++ b/admin/include/uploadify/uploadify.php @@ -19,7 +19,7 @@ echo '$user'."\n"; print_r($user); $tmp = ob_get_contents(); ob_end_clean(); -// error_log($tmp, 3, "/tmp/php-".date('YmdHis').'-'.sprintf('%020u', rand()).".log"); +error_log($tmp, 3, "/tmp/php-".date('YmdHis').'-'.sprintf('%020u', rand()).".log"); if ($_FILES['Filedata']['error'] !== UPLOAD_ERR_OK) { @@ -43,8 +43,8 @@ ob_start(); $image_id = add_uploaded_file( $_FILES['Filedata']['tmp_name'], $_FILES['Filedata']['name'], - null, - 8 + array($_POST['category_id']), + $_POST['level'] ); if (!isset($_SESSION['uploads'])) @@ -62,12 +62,31 @@ array_push( $image_id ); +$query = ' +SELECT + id, + path, + tn_ext + FROM '.IMAGES_TABLE.' + WHERE id = '.$image_id.' +;'; +$image_infos = pwg_db_fetch_assoc(pwg_query($query)); + +$thumbnail_url = preg_replace('#^'.PHPWG_ROOT_PATH.'#', './', get_thumbnail_url($image_infos)); + +$return = array( + 'image_id' => $image_id, + 'category_id' => $_POST['category_id'], + 'thumbnail_url' => $thumbnail_url, + ); + $output = ob_get_contents(); ob_end_clean(); if (!empty($output)) { add_upload_error($_POST['upload_id'], $output); + $return['error_message'] = $output; } -echo "1"; +echo json_encode($return); ?> \ No newline at end of file diff --git a/admin/themes/clear/theme.css b/admin/themes/clear/theme.css index aa8b97a19..af5dcb768 100644 --- a/admin/themes/clear/theme.css +++ b/admin/themes/clear/theme.css @@ -20,7 +20,7 @@ body, h3, dt, h2, .throw, .content, label { color:#777; } th { color: #888; } INPUT, select, textarea { color:#666; background-color: #ccc; } input[type="radio"], input[type="checkbox"] { background-color: transparent; } -INPUT[type="submit"], INPUT[type="reset"] { color:#666; border: 1px solid #777; background-color: #bbb; padding: 1px 15px; } +INPUT[type="submit"], INPUT[type="button"], INPUT[type="reset"] { color:#666; border: 1px solid #777; background-color: #bbb; padding: 1px 15px; } legend, h3 { color: #777; } h2 { color: #777; } @@ -50,6 +50,7 @@ input[type="button"], input[type="submit"], input[type="reset"] { } input[type="button"]:hover, input[type="submit"]:hover, input[type="reset"]:hover { + cursor:pointer; color:#666; border-color: #999; } diff --git a/admin/themes/default/template/include/colorbox.inc.tpl b/admin/themes/default/template/include/colorbox.inc.tpl index 6ca8e0502..76651eafd 100644 --- a/admin/themes/default/template/include/colorbox.inc.tpl +++ b/admin/themes/default/template/include/colorbox.inc.tpl @@ -1,2 +1,2 @@ {combine_script id='jquery.colorbox' load='footer' require='jquery' path='themes/default/js/plugins/jquery.colorbox.min.js'} -{combine_css path="themes/default/js/plugins/jquery.colorbox.css"} \ No newline at end of file +{combine_css path="themes/default/js/plugins/colorbox/style2/colorbox.css"} diff --git a/admin/themes/default/template/photos_add_direct.tpl b/admin/themes/default/template/photos_add_direct.tpl index ffcb265d5..7f17663f8 100644 --- a/admin/themes/default/template/photos_add_direct.tpl +++ b/admin/themes/default/template/photos_add_direct.tpl @@ -6,6 +6,8 @@ {combine_css path="admin/include/uploadify/uploadify.css"} {/if} +{include file='include/colorbox.inc.tpl'} + {footer_script}{literal} jQuery(document).ready(function(){ function checkUploadStart() { @@ -13,11 +15,6 @@ jQuery(document).ready(function(){ jQuery("#formErrors").hide(); jQuery("#formErrors li").hide(); - if (jQuery("input[name=category_type]:checked").val() == "new" && jQuery("input[name=category_name]").val() == "") { - jQuery("#formErrors #emptyCategoryName").show(); - nbErrors++; - } - var nbFiles = 0; if (jQuery("#uploadBoxes").size() == 1) { jQuery("input[name^=image_upload]").each(function() { @@ -65,15 +62,79 @@ jQuery(document).ready(function(){ return byteSize+suffix; } - if (jQuery("select[name=category] option").length == 0) { - jQuery('input[name=category_type][value=existing]').attr('disabled', true); - jQuery('input[name=category_type]').attr('checked', false); - jQuery('input[name=category_type][value=new]').attr('checked', true); + function fillCategoryListbox(selectId, selectedValue) { + jQuery.getJSON( + "ws.php?format=json&method=pwg.categories.getList", + { + recursive: true, + fullname: true, + format: "json", + }, + function(data) { + jQuery.each( + data.result.categories, + function(i,category) { + var selected = ""; + if (category.id == selectedValue) { + selected = "selected"; + } + + jQuery("