Пример #1
0
 protected function register($group, $hook, $action)
 {
     $group = basename($group);
     $this->hooks[$this->site][$group][$hook][$action] = [];
     $directory = OSCOM::getConfig('dir_root', 'Shop') . 'includes/Module/Hooks/' . $this->site . '/' . $group;
     if (is_dir($directory)) {
         if ($dir = new \DirectoryIterator($directory)) {
             foreach ($dir as $file) {
                 if (!$file->isDot() && !$file->isDir() && $file->getExtension() == 'php' && $file->getBasename('.php') == $hook) {
                     $class = 'OSC\\OM\\Module\\Hooks\\' . $this->site . '\\' . $group . '\\' . $hook;
                     if (method_exists($class, $action)) {
                         $this->hooks[$this->site][$group][$hook][$action][] = $class;
                     }
                 }
             }
         }
     }
     $filter = ['site' => $this->site, 'group' => $group, 'hook' => $hook];
     foreach (Apps::getModules('Hooks', null, $filter) as $k => $class) {
         if (method_exists($class, $action)) {
             $this->hooks[$this->site][$group][$hook][$action][] = $k;
         }
     }
 }
Пример #2
0
                             $module = new $class();
                             if (in_array($group . '/' . $class, $modules_installed)) {
                                 $modules['installed'][] = array('code' => $class, 'title' => $module->title, 'group' => $group, 'sort_order' => (int) $module->sort_order);
                             } else {
                                 $modules['new'][] = array('code' => $class, 'title' => $module->title, 'group' => $group);
                             }
                         }
                     }
                 }
             }
             $dir->close();
         }
     }
 }
 $maindir->close();
 foreach (Apps::getModules('Content') as $k => $class) {
     $module = new $class();
     if (in_array($k, $modules_installed)) {
         $modules['installed'][] = array('code' => $k, 'title' => $module->title, 'group' => $module->group, 'sort_order' => (int) $module->sort_order);
     } else {
         $modules['new'][] = array('code' => $k, 'title' => $module->title, 'group' => $module->group);
     }
 }
 function _sortContentModulesInstalled($a, $b)
 {
     return strnatcmp($a['group'] . '-' . (int) $a['sort_order'] . '-' . $a['title'], $b['group'] . '-' . (int) $b['sort_order'] . '-' . $b['title']);
 }
 function _sortContentModuleFiles($a, $b)
 {
     return strnatcmp($a['group'] . '-' . $a['title'], $b['group'] . '-' . $b['title']);
 }
Пример #3
0
                        $directory_array[] = $file;
                    }
                } else {
                    if (in_array($file, $modules_installed)) {
                        $directory_array[] = $file;
                    } else {
                        $new_modules_counter++;
                    }
                }
            }
        }
    }
    $dir->close();
}
if (isset($appModuleType)) {
    foreach (Apps::getModules($appModuleType) as $k => $v) {
        if (isset($_GET['list']) && $_GET['list'] == 'new') {
            if (!in_array($k, $modules_installed)) {
                $directory_array[] = $k;
            }
        } else {
            if (in_array($k, $modules_installed)) {
                $directory_array[] = $k;
            } else {
                $new_modules_counter++;
            }
        }
    }
}
sort($directory_array);
?>
Пример #4
0
            if (!is_dir($dir->path . '/' . $file)) {
                if (substr($file, strrpos($file, '.')) == '.php') {
                    $files[] = $file;
                }
            }
        }
        $dir->close();
        natcasesort($files);
        foreach ($files as $file) {
            if ($OSCOM_Language->definitionsExist('modules/boxes/' . pathinfo($file, PATHINFO_FILENAME))) {
                $OSCOM_Language->loadDefinitions('modules/boxes/' . pathinfo($file, PATHINFO_FILENAME));
            }
            include $dir->path . '/' . $file;
        }
    }
    foreach (Apps::getModules('AdminMenu') as $m) {
        $appmenu = call_user_func([$m, 'execute']);
        if (is_array($appmenu) && !empty($appmenu)) {
            $cl_apps_groups[] = $appmenu;
        }
    }
}
usort($cl_box_groups, function ($a, $b) {
    return strcasecmp($a['heading'], $b['heading']);
});
foreach ($cl_box_groups as &$group) {
    usort($group['apps'], function ($a, $b) {
        return strcasecmp($a['title'], $b['title']);
    });
}
unset($group);
Пример #5
0
                                        foreach ($h->getMethods(\ReflectionMethod::IS_STATIC | \ReflectionMethod::IS_PUBLIC) as $method) {
                                            if ($method->name != '__construct') {
                                                $hooks[$site . '/' . $group . '\\' . $hook][] = ['method' => $method->name];
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
foreach (Apps::getModules('Hooks') as $k => $v) {
    list($vendor, $app, $code) = explode('\\', $k, 3);
    $h = new \ReflectionClass($v);
    foreach ($h->getMethods(\ReflectionMethod::IS_STATIC | \ReflectionMethod::IS_PUBLIC) as $method) {
        if ($method->name != '__construct') {
            $hooks[$code][] = ['app' => $vendor . '\\' . $app, 'method' => $method->name];
        }
    }
}
require $oscTemplate->getFile('template_top.php');
?>

<style>
.sitePill {
  color: #fff;
  background-color: #009933;