private function generate_dep_list($deps, $unsatisfied = array(), $unsatisfied_network = array()) { $all_plugins = get_plugins(); $dep_list = ''; foreach ($deps as $dep) { $plugin_ids = Plugin_Dependencies::get_providers($dep); if (in_array($dep, $unsatisfied)) { $class = 'unsatisfied'; } elseif (in_array($dep, $unsatisfied_network)) { $class = 'unsatisfied_network'; } else { $class = 'satisfied'; } if (empty($plugin_ids)) { $name = html('span', esc_html($dep)); } else { $list = array(); foreach ($plugin_ids as $plugin_id) { $name = isset($all_plugins[$plugin_id]['Name']) ? $all_plugins[$plugin_id]['Name'] : $plugin_id; $list[] = html('a', array('href' => '#' . sanitize_title($name)), $name); } $name = implode(' or ', $list); } $dep_list .= html('li', compact('class'), $name); } return html('ul', array('class' => 'dep-list'), $dep_list); }