function bigmenu_get_cached_mlids in Big Menu 7
Get the menu items that have already been expanded.
Merge in with the form during its construction.
Parameters
array $form_state: The array of submitted form values.
Return value
array The previously cached mlids, including those from expanded parents.
1 call to bigmenu_get_cached_mlids()
- bigmenu_overview_form in ./bigmenu.admin.inc 
- Overview form for bigmenu.
File
- ./bigmenu.admin.inc, line 75 
- Administrative page callbacks for bigmenu module.
Code
function bigmenu_get_cached_mlids($form_state) {
  $cached_mlids = array();
  if (!empty($form_state) && !empty($form_state['rebuild_info']) && !empty($form_state['rebuild_info']['copy'])) {
    $form_build_id = $form_state['rebuild_info']['copy']['#build_id'];
    $cached_form = form_get_cache($form_build_id, $form_state);
    if (!empty($cached_form)) {
      // We have previously expanded one of the menu items,
      // so extract the items that were in the cached form
      // so that we can add them to the form that is being built now.
      foreach ($cached_form as $key => $value) {
        $matches = array();
        if (preg_match('/mlid:([0-9]*)/', $key, $matches)) {
          $cached_mlids[$key] = $value;
        }
      }
    }
  }
  return $cached_mlids;
}