You are here

function _metatag_config_instance_sort in Metatag 7

Sort callback for sorting by metatag instance string values.

2 string references to '_metatag_config_instance_sort'
MetatagCoreUnitTest::testConfigInstanceSort in tests/MetatagCoreUnitTest.test
Test the _metatag_config_instance_sort() function.
metatag_config_overview in ./metatag.admin.inc
Menu callback for the main Metatag configuration page.

File

./metatag.module, line 3016
Primary hook implementations for Metatag.

Code

function _metatag_config_instance_sort($a, $b) {
  $a_contexts = explode(':', $a);
  $b_contexts = explode(':', $b);

  // Global config always comes first.
  if ($a_contexts[0] == 'global' && $b_contexts[0] != 'global') {
    return -1;
  }
  elseif ($b_contexts[0] == 'global' && $a_contexts[0] != 'global') {
    return 1;
  }
  for ($i = 0; $i < max(count($a_contexts), count($b_contexts)); $i++) {
    $a_context = isset($a_contexts[$i]) ? $a_contexts[$i] : '';
    $b_context = isset($b_contexts[$i]) ? $b_contexts[$i] : '';
    if ($a_context == $b_context) {
      continue;
    }
    else {
      return strcmp($a_context, $b_context);
    }
  }
}