diff --git a/sites/all/modules/menu_minipanels/menu_minipanels.module b/sites/all/modules/menu_minipanels/menu_minipanels.module
index 31a23e2..374e30f 100755
--- a/sites/all/modules/menu_minipanels/menu_minipanels.module
+++ b/sites/all/modules/menu_minipanels/menu_minipanels.module
@@ -542,3 +542,45 @@ function menu_minipanels_excluded_path() {

   return $exclude_path_match;
 }
+
+if (!function_exists('array_replace_recursive'))
+{
+  function array_replace_recursive($array, $array1)
+  {
+    function recurse($array, $array1)
+    {
+      foreach ($array1 as $key => $value)
+      {
+        // create new key in $array, if it is empty or not an array
+        if (!isset($array[$key]) || (isset($array[$key]) && !is_array($array[$key])))
+        {
+          $array[$key] = array();
+        }
+
+        // overwrite the value in the base array
+        if (is_array($value))
+        {
+          $value = recurse($array[$key], $value);
+        }
+        $array[$key] = $value;
+      }
+      return $array;
+    }
+
+    // handle the arguments, merge one by one
+    $args = func_get_args();
+    $array = $args[0];
+    if (!is_array($array))
+    {
+      return $array;
+    }
+    for ($i = 1; $i < count($args); $i++)
+    {
+      if (is_array($args[$i]))
+      {
+        $array = recurse($array, $args[$i]);
+      }
+    }
+    return $array;
+  }
+}
