diff options
Diffstat (limited to 'include/comanche.php')
-rw-r--r-- | include/comanche.php | 16 |
1 files changed, 11 insertions, 5 deletions
diff --git a/include/comanche.php b/include/comanche.php index 9585a6578..1537226ca 100644 --- a/include/comanche.php +++ b/include/comanche.php @@ -282,15 +282,21 @@ function comanche_widget($name, $text) { } } - if(file_exists('widget/' . trim($name) . '.php')) - require_once('widget/' . trim($name) . '.php'); + $func = 'widget_' . trim($name); + + if(! function_exists($func)) { + if(file_exists('widget/' . trim($name) . '.php')) + require_once('widget/' . trim($name) . '.php'); + elseif(folder_exists('widget/'. trim($name)) + && (file_exists('widget/' . trim($name) . '/' . trim($name) . '.php'))) + require_once('widget/' . trim($name) . '/' . trim($name) . '.php'); + } else { - $theme_widget = 'widget_' . trim($name) . '.php'; - if(theme_include($theme_widget)) + $theme_widget = $func . '.php'; + if((! function_exists($func)) && theme_include($theme_widget)) require_once(theme_include($theme_widget)); } - $func = 'widget_' . trim($name); if (function_exists($func)) return $func($vars); } |