function aitAddShortcodesButtons() { global $aitThemeShortcodes, $aitEditorShortcodes; if (isset($aitThemeShortcodes) and !empty($aitThemeShortcodes)) { foreach ($aitThemeShortcodes as $shortcode => $ver) { require_once AIT_FRAMEWORK_DIR . "/Shortcodes/{$shortcode}/load.php"; } } if (!current_user_can('edit_posts') && !current_user_can('edit_pages')) { return; } if (get_user_option('rich_editing') == 'true' && aitShowAdminFeature('wysiwyg') and is_admin()) { add_filter('mce_external_plugins', 'aitMceExternaPlugins'); add_filter('mce_buttons_3', 'aitMceButtons'); } }
/** * Generates AIT Admin menu * @param array $config Content of parsed config file */ function aitGenerateAdminMenu($config, $brandingOptions) { $branding = @$brandingOptions->branding; $updateData = aitGetAitUpdatesData(); $c = array_slice($config, 0, 1); $_keys = array_keys($c); $key = reset($_keys); $_values = array_values($c); $page = reset($_values); unset($c); $wkey = $key; if (current_user_can('manage_options') && aitShowAdminFeature('dashboard')) { $adminTitle = THEME_SHORT_NAME . ' ' . __('Options', THEME_CODE_NAME); $title = 'AIT Themes'; $slug = 'ait-admin'; $key = 'ait-admin'; } else { if (aitShowAdminFeature('backup')) { $adminTitle = $branding->adminTitle; $title = $adminTitle; $slug = 'ait-admin-backup'; $key = 'backup'; } if (aitShowAdminFeature('skins')) { $adminTitle = $branding->adminTitle; $title = $adminTitle; $slug = 'ait-admin-skins'; $key = 'skins'; } if (aitShowAdminFeature('branding')) { $adminTitle = $branding->adminTitle; $title = $adminTitle; $slug = 'ait-admin-branding'; $key = 'branding'; } if (aitShowAdminFeature('website_settings')) { $adminTitle = $branding->adminTitle; $title = $adminTitle; $slug = 'ait-admin-' . $wkey; $key = $wkey; } } add_filter('option_page_capability_' . AIT_OPTIONS_KEY, create_function('', "return 'unfiltered_html';"), 1); if ($slug) { $cap = current_user_can('manage_options') ? 'manage_options' : 'unfiltered_html'; add_menu_page($title, sprintf(__('AIT Dashboard %s', THEME_CODE_NAME), "<span class='update-plugins count-{$updateData['counts']['total']}' title='{$updateData['title']}'><span class='update-count'>" . number_format_i18n($updateData['counts']['total']) . "</span></span>"), $cap, $slug, create_function('', 'aitAdmin("' . $key . '", "' . $adminTitle . '");'), THEME_URL . '/' . @$branding->adminMenuIcon, AIT_ADMIN_POSITION + 1); } if (aitShowAdminFeature('dashboard')) { if (current_user_can('manage_options') && aitShowAdminFeature('dashboard')) { add_submenu_page('ait-admin', THEME_LONG_NAME . ' Dashboard', 'AIT Dashboard', 'manage_options', 'ait-admin'); } else { add_submenu_page($slug, THEME_LONG_NAME . ' ' . esc_html($page['title']), esc_html($page['menu-title']), 'unfiltered_html', $slug); array_shift($config); } } if (aitShowAdminFeature('website_settings')) { foreach ($config as $keyF => $page) { if ($keyF != $key) { add_submenu_page($slug, THEME_LONG_NAME . ' ' . esc_html($page['title']), esc_html($page['menu-title']), 'manage_options', 'ait-admin-' . $keyF, create_function('', 'aitAdmin("' . $keyF . '", "' . $adminTitle . '");')); } else { add_submenu_page($slug, THEME_LONG_NAME . ' ' . esc_html($page['title']), esc_html($page['menu-title']), 'unfiltered_html', 'ait-admin-' . $keyF); } } } if (aitShowAdminFeature('branding')) { if ($slug != "ait-admin-branding") { add_submenu_page($slug, THEME_LONG_NAME . ' ' . __('Admin Branding', THEME_CODE_NAME), __('Admin Branding', THEME_CODE_NAME), 'manage_options', 'ait-admin-branding', create_function('', 'aitAdmin("branding", "' . __('Admin Branding', THEME_CODE_NAME) . '");')); } else { add_submenu_page($slug, THEME_LONG_NAME . ' ' . __('Admin Branding', THEME_CODE_NAME), __('Admin Branding', THEME_CODE_NAME), 'manage_options', 'ait-admin-branding'); } } if (aitShowAdminFeature('skins')) { if ($slug != "ait-admin-skins") { add_submenu_page($slug, THEME_LONG_NAME . ' ' . __('Skins', THEME_CODE_NAME), __('Skins', THEME_CODE_NAME), 'manage_options', 'ait-admin-skins', create_function('', 'aitAdmin("skins", "' . sprintf(__('Skins for %s', THEME_CODE_NAME), THEME_SHORT_NAME) . '");')); } else { add_submenu_page($slug, THEME_LONG_NAME . ' ' . __('Skins', THEME_CODE_NAME), __('Skins', THEME_CODE_NAME), 'manage_options', 'ait-admin-skins'); } } if (aitShowAdminFeature('backup')) { if ($slug != "ait-admin-backup") { add_submenu_page($slug, THEME_LONG_NAME . ' ' . __('Backup', THEME_CODE_NAME), __('Backup', THEME_CODE_NAME), 'manage_options', 'ait-admin-backup', create_function('', 'aitAdmin("backup", "' . __('Backup', THEME_CODE_NAME) . '");')); } else { add_submenu_page($slug, THEME_LONG_NAME . ' ' . __('Backup', THEME_CODE_NAME), __('Backup', THEME_CODE_NAME), 'manage_options', 'ait-admin-backup'); } } }
function aitAddAdminBarMenu($wpAdminBar) { global $aitThemeConfig; $adminUrl = get_admin_url(0, 'admin.php?page='); $adminId = 'ait-admin'; $rootId = ''; $rootHref = ''; if (aitShowAdminFeature('backup')) { $rootId = 'ait-admin-backup'; } if (aitShowAdminFeature('skins')) { $rootId = 'ait-admin-skins'; } if (aitShowAdminFeature('branding')) { $rootId = 'ait-admin-branding'; } if (aitShowAdminFeature('website_settings')) { $c = array_slice($aitThemeConfig, 0, 1); $_keys = array_keys($c); $key = reset($_keys); $rootHref = 'ait-admin-' . $key; $rootId = $adminId; } $pages = array(); if (aitShowAdminFeature('branding') and isset($aitDisableBranding) and !@$aitDisableBranding) { $pages['branding'] = __('Admin Branding', 'ait'); } if (aitShowAdminFeature('skins')) { $pages['skins'] = __('Skins', 'ait'); } if (aitShowAdminFeature('backup')) { $pages['backup'] = __('Backup', 'ait'); } if ($rootId) { // root node if (aitShowAdminFeature('dashboard')) { $wpAdminBar->add_node(array('id' => $rootId, 'title' => __('AIT Themes Admin', 'ait'), 'href' => $adminUrl . $rootHref)); } else { $wpAdminBar->add_node(array('id' => $rootId, 'title' => __('Theme Admin', 'ait'), 'href' => $adminUrl . $rootHref)); } } // Dashboard pages if (aitShowAdminFeature('dashboard')) { $dashboardPages = array('docs' => __('Documentation', 'ait'), 'faq' => __('FAQ', 'ait')); $wpAdminBar->add_node(array('id' => $rootId . '-dashboard', 'parent' => $rootId, 'title' => __('AIT Dashboard', 'ait'), 'href' => $adminUrl . $adminId)); foreach ($dashboardPages as $id => $title) { $wpAdminBar->add_node(array('id' => "{$rootId}-{$id}", 'parent' => $rootId . '-dashboard', 'title' => $title, 'href' => $adminUrl . $adminId . "&tab={$id}")); } } // Config pages if (aitShowAdminFeature('website_settings')) { foreach ($aitThemeConfig as $key => $page) { $wpAdminBar->add_node(array('id' => $rootId . "-{$key}", 'parent' => $rootId, 'title' => esc_html($page['menu-title']), 'href' => $adminUrl . $adminId . "-{$key}")); if (isset($page['tabs'])) { foreach ($page['tabs'] as $tabKey => $tab) { $wpAdminBar->add_node(array('id' => $rootId . "-{$tabKey}", 'parent' => $rootId . "-{$key}", 'title' => esc_html($tab['tab-title']), 'href' => $adminUrl . $adminId . "-{$key}&tab=" . $tabKey)); } } } } // Branding, Skins, Backup foreach ($pages as $id => $title) { $wpAdminBar->add_node(array('id' => "{$rootId}-{$id}", 'parent' => $rootId, 'title' => $title, 'href' => $adminUrl . $adminId . "-{$id}")); } // Updates $updates = aitGetAitUpdatesData(); if ($updates['counts']['total'] != 0) { $title = '<span class="ab-icon"></span><span class="ab-label">' . number_format_i18n($updates['counts']['total']) . '</span>'; $wpAdminBar->add_node(array('id' => "{$rootId}-updates", 'parent' => false, 'title' => $title, 'href' => $adminUrl . $adminId, 'meta' => array('title' => $updates['title'], 'class' => 'ait-ab-updates'))); } }