Index
A
- *after parameter / Working with Redmine menus
- -author / Listing and managing attachments
- -author field / Preparing our models to be searched
- -author_key / Configuring an activity provider
- access control layer
- about / Understanding custom content access control
- user whitelists, managing / Managing user whitelists
- access via whitelists, managing / Restricting access via whitelists
- whitelist, enforcing / Enforcing the whitelist
- action parameter / Ensuring access restrictions in models, views, and controllers
- activity entries
- customizing / Customizing activity entries
- activity filter list / Overview of the activity stream
- activity provider
- configuring / Configuring an activity provider
- activity stream
- overview / Overview of the activity stream
- activity_provider helper plugin / Adding custom events to the activity stream
- acts_as_activity_provider method / Configuring an activity provider
- acts_as_activity_provider plugin / Overview of the activity stream, Configuring an activity provider
- acts_as_event option / Preparing our models to be searched
- acts_as_event plugin / Preparing our models to be searched, Customizing activity entries
- allowed_to? function / Ensuring access restrictions in models, views, and controllers
- article content
- including, in search / Including article content in the search
- attachments
- in views, enabling / Enabling attachments in our views
- about / Enabling attachments in our views
- accomodating, by controlling modifications / Controller modifications to accommodate attachments
- listing / Listing and managing attachments
- managing / Listing and managing attachments
- permissions, managing / Managing attachment permissions
- authorize_for view helper method / Ensuring access restrictions in models, views, and controllers
- authorize_global method / Ensuring access restrictions in models, views, and controllers
B
- *before parameter / Working with Redmine menus
- Bitbucket
- blog
- starting / Starting a blog
- Blogger
- URL / Starting a blog
- Bundler / Using custom gemsets in our plugin
C
- *caption parameter / Working with Redmine menus
- -columns field / Configuring search options
- -controller / Understanding hooks
- callback
- identifying / Identifying the callback
- call_hook method / Understanding hooks
- Codeplex
- continuous integration
- with Travis / Continuous integration with Travis
- controller hooks / Controller hooks
- controllers
- access restrictions / Ensuring access restrictions in models, views, and controllers
- Core Redmine features
- Redmine menus / Working with Redmine menus
- named permissions, initializing / Initializing named permissions
- project module availability / Project module availability
- custom events, adding to activity stream / Adding custom events to the activity stream
- custom text formatting macros, registering / Registering custom text formatting macros
D
- -datetime field / Preparing our models to be searched
- -date_column field / Configuring search options
- -default / Enabling settings management
- -deletable / Listing and managing attachments
- -description field / Preparing our models to be searched
F
- *first parameter / Working with Redmine menus
- -find_options / Configuring an activity provider
- fixtures method / Writing functional tests
- functional tests
- writing / Writing functional tests
G
- -group field / Preparing our models to be searched
- Git
- GitHub / Generating a new plugin
- GitHub Pages
- URL / Starting a blog
- Gitorious
- global plugin settings
- Google Code
H
- *html parameter / Working with Redmine menus
- -hook_caller / Understanding hooks
- helper hooks / Helper hooks
- hooks
- about / Understanding hooks
- URL / Understanding hooks
- view hooks / View hooks
- controller hooks / Controller hooks
- model hooks / Model hooks
- helper hooks / Helper hooks
- view hook implementation / A sample view hook implementation
- implementing / A sample view hook implementation
- integrating / Integrating the hook
- hooks, implementing
- callback, identifying / Identifying the callback
- hook, integrating / Integrating the hook
- view partial, creating / Creating the view partial
I
- *if parameter / Working with Redmine menus
- infrastructure layout
- testing / Testing infrastructure layout
- initialization checks
- specific Redmine version, checking / Checking for a specific Redmine version
- plugins existence, ensuring / Ensuring the existence of other plugins
- initialization file
- including / Diving into the initialization file
- plugin attributes / Plugin attributes
- checks / Initialization checks
- Core Redmine features, extending / Extending core Redmine features
- integration tests
- writing / Writing integration tests
L
- *last parameter / Working with Redmine menus
- link_to method / Ensuring access restrictions in models, views, and controllers
M
- -manage_members permission / Summarizing Redmine's permission system
- management
- configuring / Configuration management
- Mercurial
- model
- preparing / Preparing our model
- registering / Registering our model
- model hooks / Model hooks
- models
- access restrictions / Ensuring access restrictions in models, views, and controllers
- preparing / Model preparation
- preparing, to be searched / Preparing our models to be searched
N
- new plugin
- generating / Generating a new plugin
- custom gemsets, using in / Using custom gemsets in our plugin
- models, generating / Generating models and controllers
- controllers, generating / Generating models and controllers
P
- *param parameter / Working with Redmine menus
- *public option / Initializing named permissions
- -partial / Enabling settings management
- -permission / Configuring an activity provider
- -permission field / Configuring search options
- -project / Understanding hooks
- -project_key field / Configuring search options
- @project.module_enabled?(
- knowledgebase) / Creating the view partial
- permissions
- custom permissions, declaring / Declaring custom permissions
- permissions system
- plugin
- registering / Registering our plugin
- score card, managing / Managing your plugin's source code
- publishing, on redmine.org / Publishing your plugin on redmine.org
- announcing, on redmine.org / Announcing your plugin on redmine.org
- plugin methods
- exposing, to settings partial / Exposing plugin methods to the settings partial
- plugin_fixtures method / Writing functional tests
- project_module block / Project module availability
R
- *require option / Initializing named permissions
- -request / Understanding hooks
- Rails.configuration.to_prepare block / Integrating the hook
- Rails Engines plugin / Generating a new plugin
- Redmine
- permissions system / Summarizing Redmine's permission system
- testing issue / Working around a Redmine testing issue
- Redmine$$Plugin.register block / Registering our plugin
- Redmine**Plugin.register block
- attributes / Plugin attributes
- Redmine**WikiFormatting**Macros.register block / Registering custom text formatting macros
- redmine.org
- plugin, publishing on / Publishing your plugin on redmine.org
- plugin, announcing on / Announcing your plugin on redmine.org
- Redmine compatibility section / Publishing your plugin on redmine.org
- redmine_plugin generator / Generating a new plugin
- render_on helper method / View hooks
- Rubygems
- Ruby on Rails migrations
S
- -sort_order field / Configuring search options
- sample plugin
- search
- article content, including / Including article content in the search
- search options
- configuring / Configuring search options
- search results
- filtering, custom permissions used / Filtering search results using custom permissions
- Semantic Versioning / Plugin attributes
- settings management
- enabling / Enabling settings management
- settings model
- accessing / Accessing our settings
- Sourceforge
- Subversion
T
- -thumbnails / Listing and managing attachments
- -timestamp / Configuring an activity provider
- -title field / Preparing our models to be searched
- -type / Configuring an activity provider
- -type field / Preparing our models to be searched
- test
- database, preparing / Preparing a test database
- tests
- fixtures / Basics of test fixtures
- running / Running tests
- functional tests, writing / Writing functional tests
- integration tests, writing / Writing integration tests
- unit tests, writing / Writing unit tests
- Travis
- continuous integration with / Continuous integration with Travis
U
- -url field / Preparing our models to be searched
- unit tests
- writing / Writing unit tests
- User.current.allowed_to?(
- manage_issue_articles, @project) / Creating the view partial
- user whitelists
V
- -view_issues_show_description_bottom hook / Identifying the callback
- view hooks / View hooks
- view partial
- creating / Creating the view partial
- views
- access restrictions / Ensuring access restrictions in models, views, and controllers
- attachments, enabling / Enabling attachments in our views
W
- whitelist
- enforcing / Enforcing the whitelist
- WordPress
- URL / Starting a blog