LEADER 04939nam 2200613 450 001 9910787828003321 005 20200520144314.0 010 $a1-78328-875-2 035 $a(CKB)2670000000547146 035 $a(EBL)1593834 035 $a(SSID)ssj0001216880 035 $a(PQKBManifestationID)11788457 035 $a(PQKBTitleCode)TC0001216880 035 $a(PQKBWorkID)11198043 035 $a(PQKB)10192127 035 $a(MiAaPQ)EBC1593834 035 $a(Au-PeEL)EBL1593834 035 $a(CaPaEBR)ebr10852918 035 $a(CaONFJC)MIL583008 035 $a(OCoLC)874971422 035 $a(PPN)227991443 035 $a(EXLCZ)992670000000547146 100 $a20140411h20142014 uy 0 101 0 $aeng 135 $aur|n|---||||| 181 $ctxt 182 $cc 183 $acr 200 10$aRedmine plugin extension and development $ebuild stunning extensions quickly and efficiently by leveraging Redmine's plugin facilities /$fAlex Bevilacqua ; cover image by Aniket Sawant 210 1$aBirmingham, [England] :$cPackt Publishing,$d2014. 210 4$dİ2014 215 $a1 online resource (114 p.) 225 1 $aCommunity Experience Distilled 300 $aIncludes index. 311 $a1-78328-874-4 327 $aCover; Copyright; Credits; About the Author; About the Reviewers; www.PacktPub.com; Table of Contents; Preface; Chapter 1: Introduction to Redmine Plugins; An introduction to our sample plugin; Generating a new plugin; Using custom gemsets in our plugin; Generating models and controllers; Diving into the initialization file; Plugin attributes; Initialization checks; Checking for a specific Redmine version; Ensuring the existence of other plugins; Extending core Redmine features; Working with Redmine menus; Initializing named permissions; Project module availability 327 $aAdding custom events to the activity streamRegistering custom text formatting macros; Summary; Chapter 2: Extending Redmine Using Hooks; Understanding hooks; View hooks; Controller hooks; Model hooks; Helper hooks; A sample view hook implementation; Identifying the callback; Integrating the hook; Creating the view partial; Summary; Chapter 3: Permissions and Security; Summarizing Redmine's permissions system; Declaring custom permissions; Ensuring access restrictions in models, views, and controllers; Understanding custom content access control; Managing user whitelists 327 $aRestricting access via whitelistsEnforcing the whitelist; Summary; Chapter 4: Attaching Files to Models; Model preparation; Enabling attachments in our views; Controller modifications to accommodate attachments; Listing and managing attachments; Managing attachment permissions; Summary; Chapter 5: Making Models Searchable; Registering our plugin; Preparing our models to be searched; Configuring search options; Filtering search results using custom permissions; Including article content in the search; Summary; Chapter 6: Interacting with the Activity Stream; Overview of the activity stream 327 $aPreparing our modelRegistering our model; Configuring an activity provider; Customizing activity entries; Summary; Chapter 7: Managing Plugin Settings; An overview of Redmine's global plugin settings; Enabling settings management; Configuration management; Exposing plugin methods to the settings partial; Accessing our settings; Summary; Chapter 8: Testing Your Plugin; Testing infrastructure layout; Basics of test fixtures; Working around a Redmine testing issue; Running tests; Writing functional tests; Writing integration tests; Writing unit tests; Preparing a test database 327 $aContinuous integration with TravisSummary; Appendix: Releasing Your Plugin; Managing your plugin's source code; Starting a blog; Publishing your plugin on redmine.org; Announcing your plugin on redmine.org; Summary; Index 330 $aThis book provides a thorough look at the tools available within Redmine to facilitate the development of plugins and extensions. Full of tips and tricks, a recurring case study is also used to help guide you through the various content area extensions and plugin helpers and to provide context and real-world examples of the concepts being covered.This book is intended for those who want to build custom functionality into the Redmine project management platform. If you're already comfortable with Ruby, Rails, and Redmine, but you aren't quite sure what to do next, this book will walk you throug 410 0$aCommunity experience distilled. 606 $aProject management$xData processing 615 0$aProject management$xData processing. 676 $a658.4040285 700 $aBevilacqua$b Alex$01562235 702 $aSawant$b Aniket 801 0$bMiAaPQ 801 1$bMiAaPQ 801 2$bMiAaPQ 906 $aBOOK 912 $a9910787828003321 996 $aRedmine plugin extension and development$93829683 997 $aUNINA