You are here

function cacheflush_memcache_tab_validation in CacheFlush 7.3

Implements memcache preset validation.

1 string reference to 'cacheflush_memcache_tab_validation'
cacheflush_memcache_cacheflush_ui_tabs in modules/cacheflush_memcache/cacheflush_memcache.module
Implements hook_cacheflush_ui_tabs().

File

modules/cacheflush_memcache/cacheflush_memcache.module, line 119
Cacheflush memcache preset form.

Code

function cacheflush_memcache_tab_validation($tab, &$form, &$form_state) {

  // Check for memcache preset.
  if (isset($form_state['values']['vertical_tabs_memcache']['cacheflush_memcache_table'])) {
    foreach ($form_state['values']['vertical_tabs_memcache']['cacheflush_memcache_table'] as $key => $value) {
      if (!empty($value['memcache_cid']) && !empty($value['memcache_table'])) {
        unset($value['memcache_operations']);
        if (isset($form_state['values']['vertical_tabs_memcache']['cacheflush_memcache_table'])) {
          foreach ($form_state['values']['vertical_tabs_memcache']['cacheflush_memcache_table'] as $key => $value) {
            $form_state['cacheflush']->data['memcache']['functions'][$key] = array(
              '#name' => 'cache_clear_all',
              '#params' => array(
                $value['memcache_cid'],
                $value['memcache_table'],
              ),
            );
          }
        }
      }
      else {
        if ($value['memcache_cid'] || $value['memcache_table']) {
          if (empty($value['memcache_cid'])) {
            form_error($form['vertical_tabs_memcache']['cacheflush_memcache_table'][$key]['memcache_cid'], t('The cache ID field is mandatory.'));
          }
          if (empty($value['memcache_table'])) {
            form_error($form['vertical_tabs_memcache']['cacheflush_memcache_table'][$key]['memcache_table'], t('The table field is mandatory.'));
          }
        }
      }
    }
  }
}