diff --git a/includes/common.inc b/includes/common.inc
index 4ec37dc..76fb32f 100644
--- a/includes/common.inc
+++ b/includes/common.inc
@@ -1853,6 +1853,19 @@ function format_interval($timestamp, $granularity = 2, $langcode = NULL) {
  *   A translated date string in the requested format.
  */
 function format_date($timestamp, $type = 'medium', $format = '', $timezone = NULL, $langcode = NULL) {
+
+// Custom hook for other calendar supports (Arabian, Persian, etc.)
+          foreach (module_implements('format_date') as $module) {
+            if ($module!='date') {
+                $function = $module .'_format_date';
+                $r=$function($timestamp, $type, $format, $timezone, $langcode);
+
+                if ($r!=false) {
+                    return $r;
+                }
+            }
+          }
+
   // Use the advanced drupal_static() pattern, since this is called very often.
   static $drupal_static_fast;
   if (!isset($drupal_static_fast)) {