PluginCollapse » History » Revision 13
Revision 12 (Mischa The Evil, 2009-06-10 06:27) → Revision 13/14 (Muntek Singh, 2010-05-02 15:54)
h1. Redmine Collapse plugin {{>toc}} Collapse is a plugin for Redmine which transforms the default, static sidebar into a collapsible sidebar on the left side providing some additional tabs containing project- and menu-links. h2. Author * Mischa The Evil h2. History The Redmine Collapse plugin is a Redmine plugin-port of the collapsible-sidebar implementation created by Sebastian Kurfürst for the "Typo3-Forge":http://forge.typo3.org. He has implemented the feature in the following revisions in the Redmine-fork they use: * revision 1085: "Adding blindLeft and blindRight":http://forge.typo3.org/repositories/diff/team-forge?rev=1085 * revision 1086: "Adding left menu collapser to SVN":http://forge.typo3.org/repositories/diff/team-forge?rev=1086 * revision 1087: "Adding missing image":http://forge.typo3.org/repositories/diff/team-forge?rev=1087 * revision 1088: "Fixing small JS error":http://forge.typo3.org/repositories/diff/team-forge?rev=1088 This implementation depended on core-hacks and some custom Typo3 Redmine plugins. It also didn't do good to the @Default@, @Alternate@ and @Classic@ themes). This made the author decide to implement the feature within a seperate and independed Redmine plugin. h2. Changelog For the complete changelog see the @CHANGELOG@-file in the Redmine Collapse plugin directory. h2. Latest stable release The currently available, latest stable release of the plugin is version *0.2.2*. h2. Features The following features are provided by the plugin: * Replaces the Redmine core's sidebar ** The provided sidebar is made collapsible using JavaScript-helpers ** The default sidebar-content is made available on the default "Actions"-tab * A first, optional tab named "Projects" provides (nested) project-links to projects for which the current user has a role ** on Redmine 0.8.0 project-links are pointing to project overviews ** on Redmine 0.8.1 and later project-links are pointing to the currently-watched menu-item in the selected project (if available) * Optionally, the core's project-selector drop-down menu can be hidden * A second, optional tab named "Menus" provides links to all global (cross-project) views and reports (respecting the current users roles and permissions) ** optionally, the default project-menu (by default placed horizontally below the header) can be "moved" to the menus tab * Used strings can be centrally translated to every language (currently only Czech, Dutch, English, German and Slovak are translated, for others English stubs are provided) * 100% compatible with all the core-themes (@Default@, @Alternate@ & @Classic@) and the currently supported and registered community-themes (@Basecamp@ and @Squeejee@) One note should be made: currently the plugin overrides the Redmine base-layout to implement the features as described. h2. Screenshots Note: the following screenshots are taken from version @0.1.0@ of the plugin. They do not reflect the complete feature-set of the latest available release (@0.2.2@) yet. |=. *Global view; Collapsed sidebar* |=. *Global view; Un-collapsed sidebar, Projects-tab* | | !global_collapsed.jpg! | !global_un-collapsed_projects-tab.jpg! | |=. *Project view; Un-collapsed sidebar, Projects-tab* |=. *Project view; Un-collapsed sidebar, Actions-tab* | | !project_un-collapsed_projects-tab.jpg! | !project_un-collapsed_actions-tab.jpg! | |=. *Settings view; Project-selector shown* |=. *Settings view; Project-selector hidden* | | !settings_project-selector-not-hidden.jpg! | !settings_project-selector-hidden.jpg! | h2. Compatibility The following compatibility information only applies to versions @0.2.x@ of the Redmine Collapse Plugin. h3. 0.2.x Redmine Compatibility @0.2.x@ releases of the plugin requires at least Redmine 0.8.0 and are compatible with the Redmine trunk and the 0.8-stable branch as visible in the following table: |_. Redmine Branch: |_. Revision/Release: ||_. Tested: |_. Compatible: |_.Comments: |_. Supported: | | | || | | | | |<._Trunk_ |@CURRENT@ ||Yes |Yes | |Yes | |<._0.8-stable_ |@CURRENT@ ||Yes |Yes | |Yes | |<._0.8-stable_ |@0.8.4@ ||Yes |Yes | |Yes | |<._0.8-stable_ |@0.8.3@ ||Yes |Yes | |Yes | |<._0.8-stable_ |@0.8.2@ ||Yes |Yes | |Yes | |<._0.8-stable_ |@0.8.1@ ||Yes |Yes | |Yes | |<._0.8-stable_ |@0.8.0@ ||Yes |Yes | |Yes | |<._0.7-stable_ |@0.7.x@ ||No |No | |No | h3. 0.2.x Browser Compatibility @0.2.x@ releases of the plugin are (for about 99%) compatible with the major browser-engines. Though some tiny differences may occur between different browsers. Some known issues are listed in the following table: |_.Rendering Engine: |_.Browser: |_.Version: ||_.Tested: |_.Compatible: |_.Comments: |_.Supported: | | | | || | | | | |WebKit |<._Google Chrome_ |@2.0.172.30@ ||Yes |Yes | |Yes | |Gecko |<._Mozilla Firefox_ |@3.0.10@ ||Yes |Yes | |Yes | |Trident |<._Microsoft Internet Explorer_ |@7.x@ ||Yes |No |IE7 misses full-support for the @inherit@-value (which is defined by CSS 2.1) |Yes, but "workaround":http://www.redmine.org/wiki/redmine/PluginCollapse#Workaround-for-Internet-Explorer-7 is required | |Trident |<._Microsoft Internet Explorer_ |@8.0.6001.18702@ ||Yes |Yes | |Yes | |WebKit |<._Apple Safari (Win32)_ |@3.2.3@ ||Yes |Yes | |Yes | |Presto |<._Opera_ |@9.64@ ||Yes |Yes | |Yes | h2. Obtaining The plugin can be downloaded as a packaged release from: * this MediaFire-account: http://www.mediafire.com/evildev * the upcoming website: http://www.evil-dev.net h2. Installing # Download the plugin from the available sources (see "Obtaining":http://www.redmine.org/wiki/redmine/PluginCollapse#Obtaining) # Install the plugin as described at: http://www.redmine.org/wiki/redmine/Plugins (this plugin does not require a plugin database migration) # Login to your Redmine as an Administrator # Initially configure the plugin settings h2. Configuration This plugin can be configured under Administration -> Plugins -> Redmine Collapse plugin -> Configure. It provides the following settings: * Show the projects tab (default: checked) * Hide the core project selector (default: unchecked) * Show the menus tab (default: unchecked) ** Show the project menu in the menus tab (default: unchecked, only configurable when "Show the menus tab" is checked) * Sidebar position (default: Left, though functionality isn't implemented [yet]) h2. Upgrading # Download the latest archive file from the available sources (see "Obtaining":http://www.redmine.org/wiki/redmine/PluginCollapse#Obtaining) # Backup the currently deployed collapse plugin (@mv /vendor/plugins/redmine_collapse /vendor/plugins/redmine_collapse-backup@) # Unzip the downloaded file to your Redmine into the plugin-directory _"../vendor/plugins"_ # Restart your Redmine h2. Uninstalling # Remove the directory _"redmine_collapse"_ from the plugin-directory _"../vendor/plugins"_ # Restart Redmine Make sure that no plugin-assets remain available in _"../public/plugin_assets/redmine_collapse"_. h2. Workaround for Internet Explorer 7 Due to the fact that Microsoft Internet Explorer 7 doesn't fully support the @inherit@-value (which is defined by CSS 2.1), a manual modification of a CSS-declaration is required when either using the @Default@ or the @Classic@ theme (or every other theme which sets an incorrect @background-color@ on @#main@). You need to hard-code the wanted enumeration of the @inherit@-value by changing the following snippet in _"../assets/stylesheets/collapse.css"_; from: <pre> /***** Overloading Redmine Core layout-selectors *****/ #main { background-color: inherit; /* not in IE7 */ padding: 2px 0px 0px 14px; } </pre> to: <pre> /***** Overloading Redmine Core layout-selectors *****/ #main { background-color: #FFFFFF; /* hard-code white (#FFFFFF) for IE7 with either the Default- or the Classic-theme */ padding: 2px 0px 0px 14px; }</pre> h2. Todos Note that these can be a subject of change: * Make the position of the collapsible sidebar configurable (left ánd right) * Refactor the plugin to remove the requirement of overriding the base-layout h2. Credits Thanks goes out to the following people: h3. Code-credits * Eric Davis, Little Stream Software (http://www.littlestreamsoftware.com) ** Provided skeleton for Redmine core patches (see _"../lib/collapse_application_helper_patch.rb"_) ** Helped a lot making the overall plugin-source more Ruby-ish * Sebastian Kurfürst, Typo3 Development Team (http://www.typo3.org) ** Author of the Redmine core hacks, to implement this feature for Typo3-Forge, used as a base for this plugin * Lalit Patel, (http://www.lalit.org) ** Provided Javascript code to store data as JSON-strings in cookies (initially used by Sebastian) h3. Translation-credits * Czech (CS): Stanislav Pach (http://www.redmine.org/account/show/2564) * German (DE): Andreas Schnederle-Wagner (http://www.Futureweb.at) * Slovak (SK): Stanislav Pach (http://www.redmine.org/account/show/2564) h2. Licensing This plugin is open-source and licensed under the "GNU General Public License v2":http://www.gnu.org/licenses/old-licenses/gpl-2.0.html (GPL). See the @COPYRIGHT.txt@ and @GPL.txt@ files for details. * ©2009, Mischa The Evil (http://www.evil-dev.net) h2. Support If you need help, would like to report a bug or request a new feature you can contact the author via mail (mischa_the_evil [AT] hotmail [DOT] com) or at his (upcoming) website: http://www.evil-dev.net. As an alternative you can also join the @#redmine@-channel on the "freenode":http://freenode.net/irc_servers.shtml IRC network to see if the author is connected (with the nickname @Mischa_The_Evil@). h2. Attached screenshots