function adapter() { $adapter_file = APPS . self::$map['app'] . '/adapter.ini'; $array = ini::parse($adapter_file); $action = self::$map['module'] . '.' . self::$map['action']; if (self::$apps_excl) { if (self::$map['app'] != 'system' || $action != 'profile.view') { if (!isset(self::$apps_excl[self::$map['app']][$action])) { return self::loadErrorPage(); } } } if (!$array) { return self::loadErrorPage(); } if (!isset($array[$action])) { return self::loadErrorPage(); } $mtabs = $tabs = false; foreach ($array as $k => $v) { if (isset($v['rule'])) { $rule = explode(',', $v['rule']); $continue = true; foreach ($rule as $u) { $u = trim($u); if ($u == RULE || $u == 'all') { $continue = false; } } if ($continue) { continue; } } if (arrays::testKey($v, 'ico')) { $ico = 'tab_ico tab_ico_' . $v['ico']; } else { $ico = ''; } if (arrays::testKey($v, 'mtab')) { $active = false; if ($action == $k) { $active = true; } if ($v['mtab'] == 1) { $name = $v['title']; } else { $name = $v['mtab']; } $list = explode('.', $k); $link = SYS_DIR . self::$map['app'] . '/' . $list[0] . '/' . $list[1] . '/'; if (isset($v['right'])) { if ($active) { $addtabs[$list[0]][] = array('tab' => '<span class="' . $ico . '">' . $name . '</span>'); } else { $addtabs[$list[0]][] = array('tab' => '<a href="' . $link . '" class="' . $ico . '">' . $name . '</a>'); } } else { if ($active) { $mtabs[$list[0]][] = array('tab' => '<span class="' . $ico . '">' . $name . '</span>'); } else { $mtabs[$list[0]][] = array('tab' => '<a href="' . $link . '" class="' . $ico . '">' . $name . '</a>'); } } } else { if (arrays::testKey($v, 'tab')) { $active = false; if ($action == $k) { $active = true; } if ($v['tab'] == 1) { $name = $v['title']; } else { $name = $v['tab']; } $list = explode('.', $k); $link = SYS_DIR . self::$map['app'] . '/' . $list[0] . '/' . $list[1] . '/'; if (isset($v['right'])) { if ($active) { $addtabs[] = array('tab' => '<span class="' . $ico . '">' . $name . '</span>'); } else { $addtabs[] = array('tab' => '<a href="' . $link . '" class="' . $ico . '">' . $name . '</a>'); } } else { if ($active) { $tabs[] = array('tab' => '<span class="' . $ico . '">' . $name . '</span>'); } else { $tabs[] = array('tab' => '<a href="' . $link . '" class="' . $ico . '">' . $name . '</a>'); } } } } } if (isset($mtabs[self::$map['module']]) && $mtabs[self::$map['module']]) { s::rollArray('admin_tabs', $mtabs[self::$map['module']]); s::set('admin_tabs', files::get(ROOT . STYLE_PATH . 'tmpls/tabs.html')); if (isset($addtabs[self::$map['module']])) { s::rollArray('admin_right_tabs', $addtabs[self::$map['module']]); } } else { if ($tabs) { s::rollArray('admin_tabs', $tabs); s::set('admin_tabs', files::get(ROOT . STYLE_PATH . 'tmpls/tabs.html')); } if ($addtabs) { s::rollArray('admin_right_tabs', $addtabs); } } $adapter = $array[$action]; if (arrays::testKey($adapter, 'title')) { self::$map['title'] = $adapter['title']; } if (arrays::testKey($adapter, 'mode')) { self::$map['mode'] = $adapter['mode']; } if (arrays::testKey($adapter, 'rule')) { self::$map['rule'] = $adapter['rule']; } }