Plone 3 Intranets
()
About this ebook
Related to Plone 3 Intranets
Related ebooks
Professional Plone 4 Development: Build robust, content-centric web applications with Plone 4. Rating: 3 out of 5 stars3/5Practical Plone 3: A Beginner's Guide to Building Powerful Websites Rating: 0 out of 5 stars0 ratingsAtlassian Confluence 5 Essentials Rating: 0 out of 5 stars0 ratingsVisual SourceSafe 2005 Software Configuration Management in Practice Rating: 0 out of 5 stars0 ratingsWildFly Configuration, Deployment, and Administration - Second Edition Rating: 0 out of 5 stars0 ratingsAlfresco Developer Guide Rating: 0 out of 5 stars0 ratingsEnterprise Application Development with Ext JS and Spring Rating: 0 out of 5 stars0 ratingseZ Publish 4: Enterprise Web Sites Step-by-Step: eZ Publish 4: Enterprise Web Sites Step-by-Step Rating: 0 out of 5 stars0 ratingsAlfresco 3 Enterprise Content Management Implementation Rating: 3 out of 5 stars3/5Mastering Ext JS - Second Edition Rating: 0 out of 5 stars0 ratingsMastering KnockoutJS Rating: 0 out of 5 stars0 ratingsLiferay User Interface Development Rating: 0 out of 5 stars0 ratingsOdoo 10 Development Essentials Rating: 0 out of 5 stars0 ratingsOpenNebula 3 Cloud Computing Rating: 0 out of 5 stars0 ratingsAlfresco 4 Enterprise Content Management Implementation Rating: 3 out of 5 stars3/5Mastering Django: Core Rating: 0 out of 5 stars0 ratingsFlux Architecture Rating: 0 out of 5 stars0 ratingsJava EE 7 Development with WildFly Rating: 0 out of 5 stars0 ratingsASP.NET Core and Angular 2 Rating: 0 out of 5 stars0 ratingsMEAN Web Development - Second Edition Rating: 0 out of 5 stars0 ratingsOracle SOA Suite 11g Administrator's Handbook Rating: 0 out of 5 stars0 ratingsOracle SOA Suite 12c Administrator's Guide Rating: 0 out of 5 stars0 ratingsPlone 3.3 Site Administration Rating: 0 out of 5 stars0 ratingsNode.js Web Development - Third Edition Rating: 2 out of 5 stars2/5DevOps with Windows Server 2016: Click here to enter text. Rating: 0 out of 5 stars0 ratingsFuelPHP Application Development Blueprints Rating: 0 out of 5 stars0 ratingsBuilding Websites with VB.NET and DotNetNuke 4 Rating: 1 out of 5 stars1/5Getting Started with Oracle Data Integrator 11g: A Hands-On Tutorial Rating: 5 out of 5 stars5/5
Information Technology For You
Learning Microsoft Endpoint Manager: Unified Endpoint Management with Intune and the Enterprise Mobility + Security Suite Rating: 0 out of 5 stars0 ratingsCreating Online Courses with ChatGPT | A Step-by-Step Guide with Prompt Templates Rating: 4 out of 5 stars4/5Data Analytics for Beginners: Introduction to Data Analytics Rating: 4 out of 5 stars4/5An Ultimate Guide to Kali Linux for Beginners Rating: 3 out of 5 stars3/5Practical Ethical Hacking from Scratch Rating: 5 out of 5 stars5/5Summary of Super-Intelligence From Nick Bostrom Rating: 4 out of 5 stars4/5COMPUTER SCIENCE FOR ROOKIES Rating: 0 out of 5 stars0 ratingsCybersecurity for Beginners : Learn the Fundamentals of Cybersecurity in an Easy, Step-by-Step Guide: 1 Rating: 0 out of 5 stars0 ratingsSpreadsheets To Cubes (Advanced Data Analytics for Small Medium Business): Data Science Rating: 0 out of 5 stars0 ratingsCompTia Security 701: Fundamentals of Security Rating: 0 out of 5 stars0 ratingsCODING INTERVIEW: Advanced Methods to Learn and Excel in Coding Interview Rating: 0 out of 5 stars0 ratingsCompTIA ITF+ CertMike: Prepare. Practice. Pass the Test! Get Certified!: Exam FC0-U61 Rating: 5 out of 5 stars5/5CompTIA Network+ CertMike: Prepare. Practice. Pass the Test! Get Certified!: Exam N10-008 Rating: 0 out of 5 stars0 ratingsHealth Informatics: Practical Guide Rating: 0 out of 5 stars0 ratingsSupercommunicator: Explaining the Complicated So Anyone Can Understand Rating: 3 out of 5 stars3/5A Practical Guide Wireshark Forensics Rating: 5 out of 5 stars5/5CompTIA Security+: Network Attacks Rating: 5 out of 5 stars5/5Unity Game Development Essentials Rating: 5 out of 5 stars5/5How to Write Effective Emails at Work Rating: 4 out of 5 stars4/5Understanding TCP/IP Rating: 4 out of 5 stars4/5The Programmer's Brain: What every programmer needs to know about cognition Rating: 5 out of 5 stars5/520 Windows Tools Every SysAdmin Should Know Rating: 5 out of 5 stars5/5Getting started with Audacity 1.3 Rating: 5 out of 5 stars5/5Cyber Security Consultants Playbook Rating: 0 out of 5 stars0 ratingsThe iPadOS 17: The Complete User Manual to Quick Set Up and Mastering the iPadOS 17 with New Features, Pictures, Tips, and Tricks Rating: 0 out of 5 stars0 ratings
Reviews for Plone 3 Intranets
0 ratings0 reviews
Book preview
Plone 3 Intranets - Victor Fernandez de Alba
Table of Contents
Plone 3 Intranets
Credits
About the Author
Acknowledgement
About the Reviewers
Preface
What this book covers
What you need for this book
Who this book is for
Conventions
Reader feedback
Customer support
Errata
Piracy
Questions
1. Introduction to Plone
What does Plone give me over other CMS solutions?
First surprise: not PHP, Python
Second surprise: not RDBMS, the mighty ZODB
The Plone community
Public websites, intranets, extranets, and the thin line between them
Summary
2. Getting Started
Plone versions
Installing Plone
zc.buildout requirements
Quick start for the impatient
Plone unified installers
Windows
Linux
Mac OS X
Buildout
Distribute, setuptools, and eggs
PasteScript and ZopeSkel
Running buildout
Buildout directory structure
Setting up buildout.cfg
The buildout section
The extends directive
The find-links directive
The zope2 section
The instance section
The zopepy section
Launching Zope
Summary
3. Managing our Content
Plone visual layout structure
Header
Columns
Content
Footer
Anonymous versus logged in
Content management tabs
Content structure
Adding content
Standard Plone content types
Content metadata
Content settings
Managing content
Displaying views
Managing portlets
Summary
4. Configuring our Site
Plone control panel
Mail control panel
Site
Users and groups
Security
Types
Add-on products
Content rules
Maintenance
Errors
HTML filtering
Language
Markup
Wiki formatting
Navigation
Search
Theme
Zope Management Interface
Control panel
Database management
Product management
Placeless translation service
Plone site—ZMI point of view
Installing new add-on products
As an egg via buildout
As a Zope 2 add-on product
Summary
5. Managing Users, Groups, Roles, and Permissions
One vision
Security entities
Roles
Global and local roles
Permissions
Global Zope user accounts
User self-registration
Managing users and groups
The user registration form
Managing users
Managing groups
Recovering user password
More control: managing ZMI
Administering users via ZMI
Administering groups via ZMI
Administering roles via ZMI
The sharing tab
Local role inheritance
Summary
6. Managing Workflows
Workflow entities
States
Transitions
Guards
Permissions
Assigning local roles to groups
Scripts
ZMI workflow management
Out-of-the-box workflows
Simple publication workflow
Community workflow
Community workflow for folders
One state workflow
Intranet workflow
Intranet workflows for folders
Workflow diving
States
Transitions
Variables
Worklists
Scripts
No workflow and multiple workflow use cases
Some useful workflow tools
DCWorkflowGraph
collective.wtf
collective.workflowed
Placeful workflow
Best practices
Make an initial blueprint first
Avoid developing on production servers
Start from an existing workflow copy
Use the tools shown for debugging
Test our workflow
Summary
7. Securing our Intranet
Global or local roles?
Using global roles
Using local roles
Designing a sustainable role policy
A policy example
Restricting the use of the Manager role
Creating system administrator users for the Zope instance
Creating additional manager users of the Plone site
Granting other role permissions restricted to Managers
Local role delegation
Allowing non-managers to administer local roles
Choosing a workflow for our intranet
Restricting access to authenticated users
Building an example intranet workflow
Private state
Draft state
Intranet state
Transitions
Managing private content
Creating private sections
Workgroup areas
Third-party add-on products
Adding roles to the Plone UI
Using a custom product
Using collective.sharingroles
Summary
8. Using Content Type Effectively
Designing our intranet information architecture
Using collections
Creating a collection
Table of contents
Next/previous navigation
Presentation mode
Enabling the presentation mode
Formatting a slide
Third-party content types—best practices
A few golden rules
Ordering the Add new
content type menu
Content type superseding
Mantaining usability
Upgrades
Summary
9. Intranet Add-on Products
Calendaring and extended events
Plone4ArtistsCalendar
Installation
Features
Take advantage of local security and collections
vs.event
Installation
Features
Form generators
PloneFormGen
Installation
Dependencies
How it works
Field types
Action adapters
Other content types in a form folder
Extensibility and third-party products for PFG
Captcha integration
Blogs
Quills
Installation
Features
Quills portlets
Configuring the blog
Scrawl
Installation
Features
Discussion board
PloneBoard
Installation
How it works
Adjusting permissions on Ploneboard for intranet use
Polls and surveys
PlonePopoll
Installation
How it works
Adjusting default permissions for polls
Taking advantage of local roles with polls
Plone Survey
Installation
How it works
Adjusting default permissions for surveys
Document files management
ARFilePreview and AROfficeTransforms
Installation
Features
Additional software required
OpenXML
Installation
Dependencies
Summary
10. Basic Product Development
Building our own product
Naming our product
Creating the egg
Anatomy of a Plone product egg
Egg documentation files
Egg setup files
Main product content
ZCML configuration files
Making the product installable
The power of GenericSetup
Snapshots
Importing and exporting a particular product profile
Comparing snapshots and product profiles
Importing GenericSetup profiles from a product
Cloning content types via GenericSetup
Using a product to configure security
Defining role map assignment to permissions
Creating new workflows or modifying existing ones
Dexterity
Summary
11. Content Rules, Syndication, and Advanced Features
Content rules
Adding a new rule
Assigning rules to folderish objects
Making any content type rule aware
Syndication
Enabling folder syndication
Accessing a secure RSS feed
Versioning
Changing versioning policy
WebDAV
Managing WebDAV access permissions
External editing
Installing the External Editor
Windows
Linux
Mac OS X
Enabling external editing
Modifying helper software
Summary
12. Theming our Intranet
Diving into Plone's page rendering
Acquisition from parents
Plone skins tool
Skins and layers
Acquisition in skin layers
Zope page templates
TAL
METAL
Viewlets
Managing viewlets
Composing a Plone page
Rendering the main_template.pt page template
Resource registries
CSS resource registry
JavaScript resource registry
Theming using third-party add-on products
GloWorm—add-on product for viewlet customization
Installation
Using GloWorm
CSSManager—add-on product for CSS and basic properties customization
Installation
Using CSSManager
CSS customization with base_properties sheet
Changing the logged-in tabs' attributes
Custom theme add-on products
Building our own theme add-on product
Installing the product
Customizing Plone skin layer resources
Enabling CSS debug mode
Customizing the site logo
Customizing the logo image and adding a new one
Customizing the plone.logo viewlet
Customizing Plone CSS
Resetting Plone CSS
More about customizing viewlets
Using Generic Setup to customize a theme
Theming—best practices
Summary
13. Deploying our Intranet
Deployment buildouts
Buildout base configuration
Adding a versions file
Caching extended configuration
Using the newest directive
Adding ports and hosts names sections
Adding process owners section
Changing the ownership of buildout folder
Common administration tasks
Backing up and restoring database
Database packing
Rotating the log files
Scheduling
Virtual hosting
VirtualHostMonster
Virtual hosting a root domain
Virtual hosting a domain subdirectory
Small intranet deployments
Monolithic Zope
Performance
Scalability
Buildout for small deployments
Small deployments layer diagram
Medium intranet deployments
ZEO Zope Enterprise Objects)
Adding a ZEO server to our buildout
ZEO clients
Scalability
Performance
Adding ZEO clients to our buildout
Load balancer
Supervisor to rule them all
Using Supervisor
Modifying the web server settings
Medium deployments layer diagram
Large intranet deployments
Adding cache to our deployment
Products.CacheSetup add-on product
Cache server
Building and configuring Varnish
Default VCL configuration template file
Modifying the web server settings
Spanning services in separate servers
Increasing the ZEO client instances
Updating balancer configuration
Setting LDAP as an external user database
Large deployments service layer diagram
Summary
Index
Plone 3 Intranets
Plone 3 Intranets
Copyright © 2010 Packt Publishing
All rights reserved. No part of this book may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, without the prior written permission of the publisher, except in the case of brief quotations embedded in critical articles or reviews.
Every effort has been made in the preparation of this book to ensure the accuracy of the information presented. However, the information contained in this book is sold without warranty, either expressed or implied. Neither the author, nor Packt Publishing, and its dealers and distributors will be held liable for any damages caused or alleged to be caused directly or indirectly by this book.
Packt Publishing has endeavored to provide trademark information about all of the companies and products mentioned in this book by the appropriate use of capitals. However, Packt Publishing cannot guarantee the accuracy of this information.
First published: August 2010
Production Reference: 1220710
Published by Packt Publishing Ltd.
32 Lincoln Road
Olton
Birmingham, B27 6PA, UK.
ISBN 978-1-847199-08-9
www.packtpub.com
Cover Image by Faiz Fattohi (<faizfattohi@gmail.com>)
Credits
Author
Víctor Fernández de Alba
Reviewers
Ramon Navarro Bosch
Enzo Cesanelli
Leonardo J. Caballero G.
Matthew Wilkes
Acquisition Editor
Rashmi Phadnis
Development Editor
Ved Prakash Jha
Technical Editors
Madhumita Singh
Arani Roy
Conrad Sardinha
Indexer
Rekha Nair
Editorial Team Leader
Mithun Sehgal
Project Team Leader
Priya Mukherji
Project Coordinator
Prasad Rai
Proofreader
Cathy Cumberlidge
Graphics
Geetanjali Sawant
Production Coordinator
Arvindkumar Gupta
Cover Work
Arvindkumar Gupta
About the Author
Víctor Fernández de Alba has been an IT architect at UPCnet, the Barcelona Tech University (UPC) IT company since 2001. He has been leading the design and technical architecture of more than 100 projects undertaken by the UPCnet Plone Team since its inception in 2004. He has been teaching Plone to non-technical end users at the university for some time now. This allowed him to use this close experience with users for improved usability of web projects developed by its team. He also writes manuals about Plone targeted to end users.
The flagship project of UPCnet Plone Team is Genweb UPC. This project allows a fully featured, customized, and end-user ready intranets and public websites to be deployed in few short steps. It has helped to launch more than 200 Plone-powered sites at the university, including departmental web and intranets, university services, faculties, and other entities. In December 2009, the UPCnet Plone Team finished one of its most ambitious projects, and the main website of the Barcelona Tech University became a reality. It was developed focusing on scalability, high performance, and usability, using Plone.
Acknowledgement
I would like to thank my wife, Agata. This book wouldn't have been possible without her stubbornness, motivation, endless support, and unconditional love.
I want to specially thank my beloved mother, father, and brothers who have encouraged me throughout the years to better myself. I am who I am, thanks to them.
I would like to thank Javier Otero who has been a guiding light in my professional life, point of reference, endless source of knowledge, and above all, a friend. Thanks to Ramon Navarro who showed me the path to the Plone core and shared with me his dark magic. Thanks to both of them, who helped me review the book.
Finally, I want to remember those people at UPCnet who introduced Plone to me, and gave me the chance to work with it. This is a precious gift from the people who have, in one way or another, contributed to make this book a reality: the Plone community, the UPC Plone team, Vilabobo's team, the Packt Publishing team, specially to Rashmi, Ved, Prasad, and Madhumita, and my official book reviewers. Thanks a lot.
About the Reviewers
Ramon Navarro Bosch has been a computer science engineer since 2002 and is currently pursuing his PhD in Low Power embedded software. He has worked in the Universitat Politècnica de Catalunya (UPC) as System Administrator and Software Analyst from 1998 to 2006. During this period of time he has been involved in Samba, OLSR networks, C#-Mono, OpenWRT, Debian, LDAP, and Plone. He wrote a book about Mono development in C# using GTK for the Universitat Oberta de Catalunya. After working for a period of eighteen months for a Plone company called Headnet in Aarhus (Denmark), he returned to Spain with good knowledge and community contacts to start a Plone business. During the last three years he has been involved in some community projects (multilingual, bug solving, and local talks) and worked on some big projects for the UPC, such as the main page and the nearly 300 Plones infrastructure. He is also a teacher of software development at the UPC (using Python).
I thank my family for the support and for buying an Amstrad CPC when I was 10 years old.
Enzo Cesanelli has over nine years of experience in designing and testing web solutions. His humanist education, along with endless passion for new technologies, led him to focus on information architecture and user experience design.
Along his path, Enzo met Plone, which quickly became his engine of choice for most of his developed projects, namely, corporate websites, intranets, and web applications. A digital nomad, Enzo has just moved to London to broaden his personal and professional horizons, and to find new projects for Noiza, his communication agency based in Trieste, Italy.
T.S.U. Esp. Leonardo J. Caballero G. is a native from Maracaibo, Venezuela. He is a graduate of the Academia de Software Libre
of Fundacite Mérida as Especialista en Desarrollo en Software Libre
and also a graduate of the Colegio Universitario Dr. Rafael Belloso Chacín
as Técnico Superior Universitario en Informática
. Currently he is a member of the CENDITEL Foundation community, where he serves as a Developer of Free Technology. He is an advisor to the Venezuelan government agencies regarding issues of community collaboration and free software development. He has experience in using Free Software since 2002. He has participated as a collaborator in the Internationalization process and Spanish localization in many Open Source and Free Software projects. He is an active contributor in Venezuelan projects, such as CANAIMA GNU/Linux, SAID, and others. Since 2006 he has been in charge of testing tools that facilitate the process of structuring and publishing content. He also contributes to the continuous improvement of source code in several third-party products of Plone CMS, OpenCore Software (used in the CoActivate.org website), and recently Django. He is a collaborator to PloneGov communities such as CommunesPlone (Belgiun) and Open eGov (USA). He is a founding member of the Venezuelan Plone community. He has recently reviewed a book for Packt Publishing: Plone Intranet.
I want to thank God, all saints Ifa/Orisha, my family, Syra Lacruz, and Francisco Palm for their help and patience. I also want to thank CENDITEL foundation for learning and working with Plone, the members of all the communities including, Pythonistas de Venezuela
, Plone Venezuela
, Plone ConoSur
, and Plone for their comments, advice and patience.
Matthew Wilkes has been working with Plone since 2005, originally at Team Rubber, and as a freelance consultant under the name Circular Triangle
. During that time he was involved in every aspect of intranet site creation, from the initial planning stages to optimizing deployed sites to improve performance. He is also an active Plone community foundation member, serving the Plone 4 Framework Team and foundation membership committee, as well as performing documentation reviews and assisting the management of Plone.org itself.
Per a tu Àgata,
la meva nena bonica.
Preface
Plone is a highly extensible Content Management System built on Zope application server, which is written in Python. Plone is very suitable for building intranets. No matter what size, or purpose, it offers a solution to the most common intranet needs, and more. Although it shows its real power in medium and large-scale corporate intranets, we can take advantage of Plone even in small-scale scenarios, such as small work groups, software projects, or research teams.
If you've never built an intranet before, you don't even have programming skills, or you don't have any experience with CMS, don't worry! This is the most suitable book for you.
This book will give you a complete overview of how to build and design your intranet, focusing on security and usability. It will guide you through the initial setup, Plone basics, security, and workflow-related topics, and ends with the most common deployment techniques.
Learn how to make effective use of content type for your intranet. Know how to manage the life cycle of your documents and content in general, using workflows. Manage security and access your content granularly. Learn how to choose the right add-on products for your site, and how to use it in your intranet efficiently. And at the end, know how to deploy your intranet and make your site live.
This book is targeted at people with no previous experience in Plone. There is no need for any programming experience or CMS knowledge.
What this book covers
Chapter 1, Introduction to Plone, introduces readers to Plone, what it is, for what it's used, its main features, and why it is one of the best CMSs to build an intranet.
Chapter 2, Getting Started, teaches us how to download the software requisites, install them, and run our own instance of Plone, no matter which software platform we may have.
Chapter 3, Managing our Content, talks about the basics of Plone. Before we advance to building our Plone intranet site, we should know how to manage content, as well as the basics of Plone. This section only outlines the basics of Plone and does not go in depth. However, it gives us sufficient information to have a broad knowledge of Plone.
Chapter 4, Configuring our Site, covers the most important topics about the advanced configuration of our Plone intranet and other advanced topics. It shows us how to manage our Plone site. We will learn to be confident in managing our site using the Zope Management Interface (ZMI).
Chapter 5, Managing Users, Groups, Roles, and Permissions, discusses security, and how to deal with it, which is one of the most important topics when building an intranet. In this chapter, readers will learn how security works in Plone, how to manage local users (CRUD operations), and the mechanisms that Plone makes available to users in order to manage their data, such as profile data and passwords. We will also learn about groups and roles, and the basics of Plone security.
Chapter 6 , Managing Workflows, is a detailed chapter dedicated exclusively to workflows, best practices, and how to manage, create, and modify them.
Chapter 7, Securing our Intranet, covers topics based on the experience earned whilst working with intranet users and common basic intranet needs.
Chapter 8, Using Content Type Effectively, covers common intranet use cases and shows us how to deal with them in Plone. We have to be very careful about the content type that we make available to our users. Failing to do so will lead to really difficult migrations, product conflicts, and user confusion.
Chapter 9, Intranet Add-on Products, covers a suitable stack of products addressed to intranets. It shows the most reliable and fully-featured set of Plone's third-party add-on products. It covers internal blogs, group discussions, wikis, and knowledge bases form generators, surveys and polls, creation of shared calendars, document file helper applications, and so on.
Chapter 10 , Basic Product Development, is a brief introduction to product development. It does not give an in-depth knowledge, but it aims to introduce the reader to the basics, and to the right resources to learn more about the topic.
Chapter 11 , Content Rules, Syndication, and Advanced Features, talks about advanced content features such WebDAV, access to bulk upload and download content, content rules, and syndication, amongst others.
Chapter 12, Theming our Intranet, lists the best practices for theming an intranet, focusing on performance. However, an in-depth chapter about theming is out of the scope of this book. It also talks about basic information with reference to resources where the reader will learn more about this subject.
Chapter 13, Deploying our Intranet, covers how to deploy our intranet, based on its capacity, its needs, the number of intranet users, and its size.
What you need for this book
You will need a Python-enabled environment, which is very easy to set up under Linux and MAc OS X. Windows users should make sure they install all the in order to have a fully functional Python command-line interpreter, such as Linux and MAc OS X users have.
All code and examples shown should run any platform. You will need internet access to download all the software and dependencies required to run Plone.
All prerequisites are described in depth in Chapter 2, Getting Started.
Who this book is for
This book is for anyone who needs to build an intranet with no limits on capabilities or features. Even if you don't have previous CMS experience or programming skills, this book is for you. Targeted at beginners with no previous experience with Plone, this book will teach you step-by-step, and at the end you should have a full-featured, reliable, and secure intranet.
Conventions
In this book, you will find a number of styles of text that distinguish between different kinds of information. Here are some examples of these styles, and an explanation of their meaning.
Code words in text are shown as follows: The name of this database is Data.fs.pack.
A block of code is set as follows:
[zeoserver]
recipe = plone.recipe.zope2zeoserver
zope2-location = ${zope2:location}
zeo-var = ${buildout:directory}/var
zeo-address = ${ports:zeo-server}
When we wish to draw your attention to a particular part of a code block, the relevant lines or items are set in bold:
http://www.w3.org/1999/xhtml xml:lang=en
xmlns:tal=http://xml.zope.org/namespaces/tal
xmlns:metal=http://xml.zope.org/namespaces/metal
xmlns:i18n=http://xml.zope.org/namespaces/i18n
lang=en
metal:use-macro=here/main_template/macros/master
i18n:domain=plone
>
Any command-line input or output is written as follows:
$ paster create -t plone3_buildout deployment.buildout
New terms and important words are shown in bold. Words that you see on the screen, in menus or dialog boxes for example, appear in the text like this: In the Groups tab we can find a similar functionality as the User tab.
.
Note
Warnings or important notes appear in a box like this.
Tip
Tips and tricks appear like this.
Reader feedback
Feedback from our readers is always welcome. Let us know what you think about this book—what you liked or may have disliked. Reader feedback is important for us to develop titles that you really get the most out of.
To send us general feedback, simply