/** * Get code for * @param string $PluginType * @return string */ private function getCodeFor($PluginType) { $Factory = new PluginFactory(); $Plugins = $Factory->completeData($PluginType); usort($Plugins, $this->pluginOrderFunction()); if (empty($Plugins)) { return HTML::info(__('No plugins available.')); } $Code = ' <table class="zebra-style fullwidth more-padding"> <thead> <tr class="top b"> <th colspan="3">' . PluginType::readableString($PluginType) . '</th> <th>' . __('Mode') . '</th> <th>' . __('Order') . '</th> <th></th> </tr> </thead> <tbody>'; foreach ($Plugins as $pos => $Data) { $Plugin = $Factory->newInstance($Data['key']); if ($Plugin === false) { $Code .= ' <tr class="unimportant"> <td>' . PluginInstaller::uninstallLink($Plugin->key()) . '</td> <td class="b">' . $Plugin->key() . '</td> <td colspan="4">' . __('The plugin cannot be found.') . '</td> </tr>'; } else { $Code .= ' <tr id="' . $Plugin->id() . '_tr" class="a' . ($Plugin->isInActive() ? ' unimportant' : '') . '"> <td>' . $Plugin->getConfigLink() . '</td> <td class="b">' . $Plugin->name() . '</td> <td>' . $Plugin->description() . '</td> <td><select name="plugin_modus_' . $Plugin->id() . '"> <option value="' . Plugin::ACTIVE . '"' . HTML::Selected($Plugin->isActive()) . '>' . __('enabled') . '</option> <option value="' . Plugin::ACTIVE_VARIOUS . '"' . HTML::Selected($Plugin->isHidden()) . '>' . __('hidden*') . '</option> <option value="' . Plugin::ACTIVE_NOT . '"' . HTML::Selected($Plugin->isInActive()) . '>' . __('not enabled') . '</option> </select></td> <td style="white-space:nowrap;"> <input class="plugin-position" type="text" name="plugin_order_' . $Plugin->id() . '" size="3" value="' . ($pos + 1) . '"> <span class="link" onclick="pluginMove(' . $Plugin->id() . ', \'up\')">' . Icon::$UP . '</span> <span class="link" onclick="pluginMove(' . $Plugin->id() . ', \'down\')">' . Icon::$DOWN . '</span> </td> <td>' . PluginInstaller::uninstallLink($Plugin->key()) . '</td> </tr>'; } } $Code .= ' </tbody> </table>'; $Code .= Ajax::wrapJS(' function pluginMove(id, way) { var pos = parseInt($("input[name=\'plugin_order_"+id+"\']").val()), tr = $("#"+id+"_tr"); if (way == "up" && pos > 1) { $("#"+id+"_tr .plugin-position").val(pos-1); tr.prev().find(".plugin-position").val(pos); tr.prev().toggleClass("swapped"); tr.prev().before(tr); } else if (way == "down" && tr.next().find(".plugin-position").val() > 0) { $("#"+id+"_tr .plugin-position").val(pos+1); tr.next().find(".plugin-position").val(pos); tr.next().toggleClass("swapped"); tr.next().after(tr); } tr.toggleClass("swapped"); } '); switch ($PluginType) { case 'panel': $Code .= HTML::info(__('* Hidden plugins only show their headings.')); break; case 'stat': $Code .= HTML::info(__('* Hidden plugins are grouped as \'Miscellaneous\'.')); break; case 'tool': default: $Code .= ''; } return $Code; }
/** * Get code for * @param string $PluginType * @return string */ private function getCodeFor($PluginType) { $Factory = new PluginFactory(); $Plugins = $Factory->completeData($PluginType); usort($Plugins, $this->pluginOrderFunction()); if (empty($Plugins)) { return HTML::info(__('No plugins available.')); } $Code = ' <table class="zebra-style fullwidth more-padding"> <thead> <tr class="top b"> <th colspan="3">' . PluginType::readableString($PluginType) . '</th> <th>' . __('Mode') . '</th> <th>' . __('Order') . '</th> <th></th> </tr> </thead> <tbody>'; foreach ($Plugins as $Data) { $Plugin = $Factory->newInstance($Data['key']); if ($Plugin === false) { $Code .= ' <tr class="unimportant"> <td>' . PluginInstaller::uninstallLink($Plugin->key()) . '</td> <td class="b">' . $Plugin->key() . '</td> <td colspan="4">' . __('The plugin cannot be found.') . '</td> </tr>'; } else { $Code .= ' <tr class="a' . ($Plugin->isInActive() ? ' unimportant' : '') . '"> <td>' . $Plugin->getConfigLink() . '</td> <td class="b">' . $Plugin->name() . '</td> <td>' . $Plugin->description() . '</td> <td><select name="plugin_modus_' . $Plugin->id() . '"> <option value="' . Plugin::ACTIVE . '"' . HTML::Selected($Plugin->isActive()) . '>' . __('enabled') . '</option> <option value="' . Plugin::ACTIVE_VARIOUS . '"' . HTML::Selected($Plugin->isHidden()) . '>' . __('hidden*') . '</option> <option value="' . Plugin::ACTIVE_NOT . '"' . HTML::Selected($Plugin->isInActive()) . '>' . __('not enabled') . '</option> </select></td> <td><input type="text" name="plugin_order_' . $Plugin->id() . '" size="3" value="' . $Plugin->order() . '"></td> <td>' . PluginInstaller::uninstallLink($Plugin->key()) . '</td> </tr>'; } } $Code .= ' </tbody> </table>'; switch ($PluginType) { case 'panel': $Code .= HTML::info(__('* Hidden plugins only show their headings.')); break; case 'stat': $Code .= HTML::info(__('* Hidden plugins are grouped as \'Miscellaneous\'.')); break; case 'tool': default: $Code .= ''; } return $Code; }