Changeset 8403


Ignore:
Timestamp:
12/31/10 12:58:14 (9 years ago)
Author:
plg
Message:

feature 2089: add the "not_linked" feature as "with no virtual album" in the
new Batch Manager.

Location:
trunk/admin
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • trunk/admin/batch_manager.php

    r8399 r8403  
    5555  if (isset($_POST['filter_prefilter_use'])) 
    5656  { 
    57     $prefilters = array('caddie', 'last import', 'with no album', 'with no tag'); 
     57    $prefilters = array('caddie', 'last import', 'with no album', 'with no tag', 'with no virtual album'); 
    5858    if (in_array($_POST['filter_prefilter'], $prefilters)) 
    5959    { 
     
    144144        ); 
    145145    } 
     146  } 
     147 
     148  if ('with no virtual album' == $_SESSION['bulk_manager_filter']['prefilter']) 
     149  { 
     150    // we are searching elements not linked to any virtual category 
     151    $query = ' 
     152 SELECT id 
     153   FROM '.IMAGES_TABLE.' 
     154 ;'; 
     155    $all_elements = array_from_query($query, 'id'); 
     156  
     157    $query = ' 
     158 SELECT id 
     159   FROM '.CATEGORIES_TABLE.' 
     160   WHERE dir IS NULL 
     161 ;'; 
     162    $virtual_categories = array_from_query($query, 'id'); 
     163    if (!empty($virtual_categories)) 
     164    { 
     165      $query = ' 
     166 SELECT DISTINCT(image_id) 
     167   FROM '.IMAGE_CATEGORY_TABLE.' 
     168   WHERE category_id IN ('.implode(',', $virtual_categories).') 
     169 ;'; 
     170      $linked_to_virtual = array_from_query($query, 'image_id'); 
     171    } 
     172 
     173    array_push( 
     174      $filter_sets, 
     175      array_diff($all_elements, $linked_to_virtual) 
     176      ); 
    146177  } 
    147178} 
     
    195226//  $page['cat_elements_id'] = array(); 
    196227 
    197 //  else if ('not_linked' == $_GET['cat']) 
    198 //  { 
    199 //    $page['title'] = l10n('Not linked elements'); 
    200 //    $template->assign(array('U_ACTIVE_MENU' => 5 )); 
    201 //   
    202 //    // we are searching elements not linked to any virtual category 
    203 //    $query = ' 
    204 //  SELECT id 
    205 //    FROM '.IMAGES_TABLE.' 
    206 //  ;'; 
    207 //    $all_elements = array_from_query($query, 'id'); 
    208 //   
    209 //    $linked_to_virtual = array(); 
    210 //   
    211 //    $query = ' 
    212 //  SELECT id 
    213 //    FROM '.CATEGORIES_TABLE.' 
    214 //    WHERE dir IS NULL 
    215 //  ;'; 
    216 //    $virtual_categories = array_from_query($query, 'id'); 
    217 //    if (!empty($virtual_categories)) 
    218 //    { 
    219 //      $query = ' 
    220 //  SELECT DISTINCT(image_id) 
    221 //    FROM '.IMAGE_CATEGORY_TABLE.' 
    222 //    WHERE category_id IN ('.implode(',', $virtual_categories).') 
    223 //  ;'; 
    224 //      $linked_to_virtual = array_from_query($query, 'image_id'); 
    225 //    } 
    226 //   
    227 //    $page['cat_elements_id'] = array_diff($all_elements, $linked_to_virtual); 
    228 //  } 
    229228//  else if ('duplicates' == $_GET['cat']) 
    230229//  { 
  • trunk/admin/batch_manager_global.php

    r8398 r8403  
    121121      array($_POST['associate']) 
    122122      ); 
     123 
     124    $_SESSION['page_infos'] = array( 
     125      l10n('Information data registered in database') 
     126      ); 
     127     
     128    // let's refresh the page because we the current set might be modified 
     129    $redirect_url = get_root_url().'admin.php?page='.$_GET['page']; 
     130    redirect($redirect_url); 
    123131  } 
    124132 
     
    150158      pwg_query($query); 
    151159 
    152       // we remove the dissociated images if we are currently displaying the 
    153       // category to dissociate from. 
    154       // 
    155       // TODO we can display the photo of a given album without the $_GET['cat'] 
    156       if (is_numeric($_GET['cat']) and $_POST['dissociate'] == $_GET['cat']) 
    157       { 
    158         $page['cat_elements_id'] = array_diff( 
    159           $page['cat_elements_id'], 
    160           $dissociables 
    161           ); 
    162       } 
    163     } 
    164  
    165     update_category($_POST['dissociate']); 
     160      update_category($_POST['dissociate']); 
     161       
     162      $_SESSION['page_infos'] = array( 
     163        l10n('Information data registered in database') 
     164        ); 
     165       
     166      // let's refresh the page because we the current set might be modified 
     167      $redirect_url = get_root_url().'admin.php?page='.$_GET['page']; 
     168      redirect($redirect_url); 
     169    } 
    166170  } 
    167171 
  • trunk/admin/maintenance.php

    r8126 r8403  
    154154  $advanced_features, 
    155155  array( 
    156     'CAPTION' => l10n('Not linked elements'), 
    157     'URL' => get_root_url().'admin.php?page=element_set&cat=not_linked' 
    158     ) 
    159   ); 
    160  
    161 array_push( 
    162   $advanced_features, 
    163   array( 
    164156    'CAPTION' => l10n('Files with same name in more than one physical album'), 
    165157    'URL' => get_root_url().'admin.php?page=element_set&cat=duplicates' 
  • trunk/admin/themes/default/template/batch_manager_global.tpl

    r8398 r8403  
    354354          <option value="caddie" {if $filter.prefilter eq 'caddie'}selected="selected"{/if}>caddie</option> 
    355355          <option value="last import" {if $filter.prefilter eq 'last import'}selected="selected"{/if}>last import</option> 
     356{if $ENABLE_SYNCHRONIZATION} 
     357          <option value="with no virtual album" {if $filter.prefilter eq 'with no virtual album'}selected="selected"{/if}>with no virtual album</option> 
     358{/if} 
    356359<!--          <option value="with no album">with no album</option> --> 
    357360<!--          <option value="with no virtual album">with no virtual album</option> --> 
Note: See TracChangeset for help on using the changeset viewer.