P. 1
Open Public Documentation 1

Open Public Documentation 1

|Views: 139|Likes:
Published by Pritam Prasun

More info:

Published by: Pritam Prasun on Apr 24, 2012
Copyright:Attribution Non-commercial

Availability:

Read on Scribd mobile: iPhone, iPad and Android.
download as PDF, TXT or read online from Scribd
See more
See less

10/15/2015

pdf

text

original

1. Can Modules Be Added to OpenPublic in the Same Way as on a Standard Drupal Setup? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2. Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.1 Installing OpenPublic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.1.1 Download OpenPublic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.1.2 Installation Profile . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.1.3 Shared Hosting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.1.4 System Requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.2 OpenPublic Tour . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.2.1 Home Page Rotator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.2.2 Home Page Breaking News . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.2.3 Home Page Columns . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.2.4 Home Page Navigation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.2.5 Home Page Subscribe Feature . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.2.6 Home Page Footer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.2.7 About Section Landing Page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.2.7.1 About - Leadership Subsection Landing Page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.2.7.2 About - Staff Directory Subsection Landing Page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.2.8 Services Section Landing page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.2.8.1 Service Pages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.2.9 Resources Section Landing Page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.2.9.1 Resources - Documents Landing Page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.2.10 Media Room Section Landing Page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.2.10.1 Media Room - Multimedia Landing Page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.2.10.2 Media Room - Press Release Landing Page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.2.11 Blog Section Landing Page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.3 Users and Roles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.3.1 Logging in to OpenPublic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.3.2 User Management . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.3.3 Creating a User (example) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.3.4 Permissions (example) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.3.5 User Account Settings (example) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.4 Site Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.4.1 Initial Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.5 Site Structure and Sections . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.5.1 Themes and Regions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.5.2 Taxonomy Basics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.5.3 Enabling a Module (example) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.5.4 Contexts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.6 OpenPublic Content . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.6.1 Content Types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.6.2 Creating a Blog Entry Node (example) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.6.3 Creating a Content Type (example) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.6.4 Editing Content Types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.6.5 Images . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.6.6 Relating Content . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.7 Apps . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.7.1 Apps Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.7.2 How to Build an App . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.8 Theming OpenPublic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.8.1 Theming with OpenOmega and Spartan . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.8.1.1 What is Responsive Design? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.8.1.2 Structure of the Spartan Base Theme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.8.1.3 Creating a Sub-theme from Omega . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.8.2 Theming with OpenPublic's Original Base Theme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.8.2.1 Structure of OpenPublic's Original Base Theme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.8.2.2 Customizing OpenPublic's Original Base Theme using a Subtheme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.8.2.3 Creating a sub theme using OpenPublic's Original Base Theme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.9 Resources - Tools of the Trade . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.10 What Makes a Theme OpenPublic Compatible? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.11 FAQs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.11.1 General FAQs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.11.2 OpenPublic and Drupal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.11.3 Specific Integrations and Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.11.4 Questions about Apps . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.12 OpenPublic Release Notes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.12.1 OpenPublic Beta 2 Release Notes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.12.2 OpenPublic Beta 3 Release Notes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.12.3 OpenPublic Beta 4 Release Notes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

2 2 3 3 3 5 5 6 6 7 7 8 9 10 11 12 13 14 15 16 17 18 20 21 22 24 24 25 25 26 27 30 30 31 31 32 35 35 36 37 38 42 44 46 46 47 47 50 56 56 57 58 58 59 59 60 60 62 63 64 64 65 66 67 67 67 68 68

Can Modules Be Added to OpenPublic in the Same Way as on a Standard Drupal Setup?
Q: CAN MODULES BE ADDED TO OPENPUBLIC IN THE SAME WAY AS ON A STANDARD DRUPAL SETUP? A: Yes, OpenPublic is Drupal 7. Modules can be added and updated in the same way they would for any Drupal site.

Documentation
Welcome to the home of OpenPublic documentation. This site is meant to be a growing collection of documentation on administering, building, managing, and growing your OpenPublic site. OpenPublic, which is a Drupal-based content management system (CMS), was built by Phase2 Technology, a custom development shop specializing in Drupal and open source software tools. We built OpenPublic out of the experience of building sites for several government clients, in the hopes that providing a strong foundation for public sector sites would yield greater adoption of open source software by the public sector. Our goal is for the community to come together to build software tools “by the people and for the people.” Publicly built software tools, we believe, have the to increase “open government” efforts like information transparency, communication, and open data. This distribution was built with a couple of concepts in mind: first, that site administrators in the public sector wear many hats and need a solution that acknowledges that. And second, that building a web site in the public sector means more than publishing a blog or publicizing some information. For government agencies and organizations, a well-built web site can be the primary source of transparent, accessible information to constituents. Registered users may edit and add documentation. For help in creating an account or contributing documentation, please contact us today at support@openpublicapp.com.

Recently Updated
Media Room - Press Release Landing Page updated by Danielle Sheffler (view change) Feb 01, 2012 Media Room - Multimedia Landing Page updated by Danielle Sheffler (view change) Feb 01, 2012 Media Room Section Landing Page updated by Danielle Sheffler (view change) Feb 01, 2012 Resources - Documents Landing Page updated by Danielle Sheffler (view change) Feb 01, 2012 Resources Section Landing Page updated by Danielle Sheffler (view change) Feb 01, 2012 Service Pages updated by Danielle Sheffler (view change) Feb 01, 2012 Services Section Landing page updated by Danielle Sheffler (view change) Feb 01, 2012 Blog Section Landing Page updated by Danielle Sheffler

(view change) Feb 01, 2012 About - Staff Directory Subsection Landing Page updated by Danielle Sheffler (view change) Feb 01, 2012 About - Leadership Subsection Landing Page updated by Danielle Sheffler (view change) Feb 01, 2012 About Section Landing Page updated by Danielle Sheffler (view change) Feb 01, 2012 Home Page Footer updated by Danielle Sheffler (view change) Feb 01, 2012 Home Page Subscribe Feature updated by Danielle Sheffler (view change) Feb 01, 2012 Home Page Navigation updated by Danielle Sheffler (view change) Feb 01, 2012 Home Page Columns updated by Danielle Sheffler (view change) Feb 01, 2012 More

Installing OpenPublic
OpenPublic is a packaged distribution of Drupal. The collection of modules and customizations is aimed at government agencies. Once the platform is installed, the implementer will have a working web site specifically geared for the government sector. The installation of OpenPublic is not the end of the process. The site must be configured, customized and designed to suit the needs of a specific organization. This section outlines the steps involved with setting up and configuring a custom web site using OpenPublic. Who Is this Documentation Section For? Installation of OpenPublic requires some technical skills. If you are starting from scratch and need to build a server, you will need a Linux/Unix system administrator familiar with Apache/PHP/MySQL setup and configuration. If you already have a server that complies with the server requirements for OpenPublic then very little technical knowledge is required and installing OpenPublic is very similar to installing basic Drupal.

Download OpenPublic
Downloads are available in both tar and zip formats from the OpenPublic website and from the OpenPublic project page on Drupal.org. You can view the project details and access the issue queue on the OpenPublic project page on Drupal.org

Installation Profile
Installing OpenPublic is very similar to installing Drupal. If this is the first time installing Drupal, first review the Drupal.org instructions on installing Drupal 7 here. There is currently no bundle setup for those that already have a Drupal site and want OpenPublic. It is possible, however, to download the package and use the modules & theme baseline that are included. Manual set up of content types and module configuration will be necessary. The most productive use of OpenPublic is to install it new. The OpenPublic setup walks the administrator through with a wizard-style process. Once the installation is launched from a web-browser, a typical Drupal setup screen should be visible.

OpenPublic contains many additional modules with the core Drupal bundle. If OpenPublic has been successfully installed.Begin the setup by entering the database information. enter basic site information and complete the installation. notice that the OpenPublic installation takes longer than the standard Drupal install. This is to be expected. Once database setup is complete. If familiar with installing Drupal. the installation complete screen will appear and the site can be launched. .

3 or Apache 2. There has been favorable feedback received about HotDrupal: http://hotdrupal. We have reports of successful run on the latest version of Nginx. A summary of those requirements and recommendations are: Web Server: Apache 1. Shared Hosting While Phase2 does not support OpenPublic on shared hosting servers. Thus. Your memory_limit variable. in php.com and http://rackspacecloud. OpenPublic can run on any environment properly configured to run the latest version of Drupal.com. PHP: Version 5.2.org.ini needs to be at least 128M. an appropriate development environment must be set up by the implementer. Virtual Private Hosting plans offered by http://slicehost. especially for production use. You can get additional information from them at: http://twitter. Drupal can also run on Microsoft IIS. if you are interested in or are currently using OpenPublic in shared hosting environments. If you are still having problems (seeing "white screens" or errors during installation) try setting: max_execution_time to around 120 and . Apache is still the most tested platform and strongly recommended.com are also quite competitive and could be a good fit.0. If professional services are required contact Phase2 Technology via OpenPublicApp. Submit issues or enhancement requests to the project issue queue on Drupal. Feedback received thus far: Pinchhost has had some success installing other distributions of Drupal on their shared hosting environments. but 220M is recommended.x.org/requirements.15 or higher Tips Installing a PHP code optimizer like APC is highly recommended.com Individual users have had success installing OpenPublic first in their own environments and then moving the database and files over to their shared hosting environments.5 or higher Database: MySQL 5. please feel free to share your story. especially by a developer comfortable with installing and configuring a LAMP stack manually. The latest system requirements for running Drupal can be found at http://drupal. System Requirements OpenPublic is a custom implementation of Drupal.com/pinchhost. Before the installation of OpenPublic should begin.Additional community assistance can be requested by submitting a post with the collaboration group.

and some basic configuration information. The displays are generated using different tools and techniques. The rotator highlighted here is created with the following: . its interface. 1M or even 2M. etc) The method used to display the content on a given interface The configuration settings that enable your content to be managed and displayed The enhancements that can take your Drupal-based site to another level The tour will provide a review of the site content.realpath_cache_size to 512K. At the end of this section. consider these four perspectives: The content you can manage (create. edit. moderate. you should be able to: Identify the content type(s) used to create the component Identify the method (modules or techniques) used to create the component The content displayed on the homepage is dynamically generated from content that you created for the homepage and/or content you are displaying someplace else on the site. delete. OpenPublic Tour This section provides a way to cognitively organize the many elements of Drupal and OpenPublic and help with the learning process. you should be able to: Identify components on the page Recognize the type of content being displayed Recognize methods used to display the page components Before you continue to the tour. Objective: With this documentation. max_input_time to around 120. Home Page Rotator Description: This section describes the rotator component found on the homepage.

Display: The layout and rotation is provided by OpenPublic’s default themes Home Page Breaking News Description: This section describes the Breaking News component found on the homepage. press releases. Objective: At the end of this section. Only one node can be in the queue at the same time. you should be able to: Identify the content type(s) used to create the component Identify the method (modules or techniques) used to create the component The breaking news feature is created with the following: Content: Blogs. Home page features nodes (that you create) also include a link (path) to the node that holds the real content. and site pages can be displayed here by placing a node created with a blog entry. Home Page Columns Description: This section describes the blocks included in the three columns on the home page. and can be changed with a sub-theme. you should be able to: Identify the content type(s) used to create the component Identify the method (modules or techniques) used to create the component . press releases. Method: This is a views block (Views is a module used to query the database and display the results of the query). The Read More button uses that link to send visitors to the node with the content.Content: The title. Objective: At the end of this section. Tool: Views is used to pull the node data from the database so that it can be viewed. Display: The appearance of breaking news on the site is part of the module’s theme information. teaser. and image are “home page feature” nodes. or site page content type into the Breaking News queue. You can control the order of the nodes in this display by placing them in the home page feature queue.

there are two blocks: Blogs and Resources. It is created using the views module. you should be able to: Identify the method (modules or techniques) used to create the component . You can change the links to send your visitors to your account in these sites as well as change which links appear. Each block is created using Views and will show up to 3 nodes before a pager option appears. The first provides links to common social media sites. It will show up to 5 nodes before a pager option appears. Home Page Navigation Description: This section illustrates how the main menu across the top of the site is repeated at the bottom of the page in the form of blocks. In the middle column. It is a list (often called a teaser list) of nodes created using the press release content type. Objective: At the end of this section. The last column. includes two blocks. The Resources block is a list of published nodes created with the Resources content type. which is the same column you will see on the other pages of the site.In the first column. It also shows additional links to privacy content and site map. there is a Latest News block. The Blogs block is a list of published nodes created using the Blog entry content type.

you should be able to: Identify the method (modules or techniques) used to create the component .The menu at the top of the site has the same menu items found in the menu “blocks” at the bottom of the page. Home Page Subscribe Feature Description: This section describes how the subscribe feature works. Objective: At the end of this section.

If the user is logged in. you should be able to: Identify the content type(s) used to create the component Identify the method (modules or techniques) used to create the component .Drupal has a module that allows you to create forms that collect data but does not create a node. The Webform module is being used here to create a simple. one-field form to collect email addresses. Home Page Footer Description: This section describes how the footer content is created and managed. Objective: At the end of this section. this feature will only allow one subscription for that user. If your site visitor is anonymous. Duplicate email addresses are prevented. The email addresses can then be exported and used in mailing lists. he or she can submit as many email addresses as they wish.

Objective: At the end of this section. About Section Landing Page Description: This section describes the components in the About section landing page. The footer text is the first example of this technique.OpenPublic has a unique method for creating blocks manually. you should be able to: Identify the content type(s) used to create the component Identify the method (modules or techniques) used to create the component . That node is made available in a block that you can show on one or more pages. You can change the content of this node to match what you need it to say. This feature is unique to this content type and is made possible with the NodeBlock module. The footer block is created using the Editor’s Choice content type to create a node.

you should be able to: Identify the content type(s) used to create the component Identify the method (modules or techniques) used to create the component . List of profile nodes flagged as leaders. Links to social media sites Description OpenPublic custom functionality. A list of node titles that have the most visitor/user hits and a separate list of node titles that have the most comments. Limited to 2. A view block A view block with the option to node sequence using node queue. Objective: At the end of this section. Module block About .Leadership Subsection Landing Page Description: This section describes the components in the Leadership page.The about landing page is a node created with the Site page content type. Block About Most Views / Most Comments Leadership Stay Connected Generated by A list of pages found in the main menu dropdown for this section of the site. There are four blocks assigned to this page.

You can add leadership pages to the menu if you want. The individual profile nodes flagged as leaders do not show the About menu block. It is a view page listing profile nodes flagged as leaders. you should be able to: Identify the content type(s) used to create the component Identify the method (modules or techniques) used to create the component . About . Objective: At the end of this section.Staff Directory Subsection Landing Page Description: This section describes the components in the Staff Directory page.The leadership page represents a subsection in this site. The Leadership block is not present as it would be redundant to the page content.

The staff directory page represents a subsection in this site. Services Section Landing page Description: This section describes the components in the Services section landing page. Objective: At the end of this section. It is a view page listing 10 profile nodes at a time. The individual profile nodes do not show the About menu block. you should be able to: Identify the content type(s) used to create the component Identify the method (modules or techniques) used to create the component .

you should be able to: Identify the content type(s) used to create the component Identify the method (modules or techniques) used to create the component .The services landing page is a view page listing up to 10 nodes created with the Services content type. Block Services Most Views / Most Comments Stay Connected Description A list of pages found in the main menu dropdown for this section of the site A list of node titles that have the most visitor/user hits and a separate list of node titles that have the most comments Links to social media sites Generated by OpenPublic custom functionality. Objective: At the end of this section. A view block Module block Service Pages Description: This section describes the components in the Services pages. There are three blocks on the page.

The placement and size of the image in the node content is managed by the theme.The services pages are nodes created with the Services content type. you should be able to: Identify the content type(s) used to create the component Identify the method (modules or techniques) used to create the component . Objective: At the end of this section. Resources Section Landing Page Description: This section describes the components in the Resources section landing page. The practice in this section is to add the service node to the main menu.

You can add them to the menu manually. The resource pages are similar to services pages. Block Resources Most Views / Most Comments Stay Connected Description A list of pages found in the main menu dropdown for this section of the site A list of node titles that have the most visitor/user hits and a separate list of node titles that have the most comments Links to social media sites Generated by OpenPublic custom functionality.The resources landing page is a view page listing 10 nodes at a time. A view block Module block . There are three blocks on the page. The nodes are created with the Resources content type.

The individual document nodes do not show the Resources menu. If you add documents to the menu.Documents Landing Page Description: This section describes the components in the Documents page. then the Resources menu will appear. you should be able to: Identify the content type(s) used to create the component Identify the method (modules or techniques) used to create the component The document landing page represents a subsection of the site. The nodes are created with the Document content type.Resources . It is a view page listing 10 nodes at a time. Objective: At the end of this section. Media Room Section Landing Page .

It is made up of a small bit of introduction text and two view blocks: List of five most recent press release nodes and a display of up to 6 media galleries (created with the Media gallery content type) and made up on nodes with photos (made using the Photo content type). Block Description Generated by .Description: This section describes the components in the Media Room section landing page. created using the Panels module. you should be able to: Identify the content type(s) used to create the component Identify the method (modules or techniques) used to create the component The media room is a Panel page. There are four blocks on the page. Objective: At the end of this section.

you should be able to: Identify the content type(s) used to create the component Identify the method (modules or techniques) used to create the component .Media Room Press Contact Most Views / Most Comments Stay Connected A list of pages found in the main menu dropdown for this section of the site Displays a profile node A list of node titles that have the most visitor/user hits and a separate list of node titles that have the most comments Links to social media sites OpenPublic custom functionality The Editor’s choice content type block referencing a specific profile node. Objectives: At the end of this section.Multimedia Landing Page Description: This section describes the components in the Media Room Media gallery page. A view block Module block Media Room .

Press Release Landing Page Description: This section describes the components in the Media Room Press Release page. The individual media gallery nodes do not show the Media Room menu block. The nodes are created with the Media gallery content type. It is a view page listing up to 6 media gallery nodes. Media Room . you should be able to: Identify the content type(s) used to create the component Identify the method (modules or techniques) used to create the component .The multimedia page represents a subsection of the site. Objective: At the end of this section.

The nodes are created with the Press release content type. you should be able to: Identify the content type(s) used to create the component Identify the method (modules or techniques) used to create the component . The individual press release nodes do not show the Media Room menu block. Blog Section Landing Page Description: This section describes the components in the Blog section landing page. It is a view page listing 10 nodes at a time.The press release landing page represents a subsection of the site. Objective: At the end of this section.

. The Blog module is not enabled. The nodes listed are created using the Blog entry content type. Note that this content type is not the content type generated by the Blog module.The blog landing page is a view page listing 10 nodes at a time. There are two blocks on the page.

At the end of this section. Locate and click on the Login link. Locate the list of roles that comes with OpenPublic. Locate settings for new user accounts. Create a user. . you should be able to: Log into your OpenPublic training site Distinguish between a user and a role. Enter the username and password you have been provided in the form that appears. Locate the permissions assigned to each role. Logging in to OpenPublic Example: Log into OpenPublic Go to your training site URL.Block Most Views / Most Comments Stay Connected Description A list of node titles that have the most visitor/user hits and a separate list of node titles that have the most comments Links to social media sites Generated by A view block Module block Users and Roles Users and Roles This section provides instructions on logging in. creating user accounts and assigning roles.

OpenPublic Roles Drupal comes with three roles (anonymous. and moderating content. It is best practice is to create a user account for each person that will perform as the site admin. The administrator role has all permissions. Once you log in. At the end of this section. you get additional permissions associated with being an authenticated user. What are roles? A role is a set of permissions that can be assigned to a user.Click Log in Observe you are on the Dashboard page. Distinguish between anonymous and authenticated roles. Note: If you are not logged into the site. whether you have an account or not. Locate the administrative menu across the top providing access to other administrative pages. OpenPublic adds two roles (staff and editor). Note: You are logged in as the user called admin. and users. Tasks performed by users is governed by the role(s) they have been assigned and the permissions associated with roles. you are anonymous. Note: The tasks you can perform from the dashboard can also be performed from other administrative pages. Permissions assigned to an authenticated user pass to all other roles (except to anonymous). You can create your own roles. and administrator). authenticated. Site Users A user typically represents one person Users can perform tasks on a site such as viewing. Admin is a role and in this case it is also the username. . Permissions for Each Role There are numerous permissions that can be assigned to a role. permissions. Users can have more than one role. A person can have more than one role. you should be able to: Recognize the roles in OpenPublic. editing. Distinguish between a user and a role. The Permissions activity will review the permissions for each role. User Management User Management This section introduces roles. creating.

Do not check the box to notify user of new account for this training site. Click on People in either the main menu or the breadcrumb.com) it will work. so you must use aliases if you want to send e-mails for multiple Drupal users to a single e-mail address.Creating a User (example) Example: Create a User This activity provides steps for creating a user account. Enter a password that meets the password criteria. Click Create new account Permissions (example) Example: Permissions . you should be able to log into your OpenPublic training site. You do not have to do that. Click on + Add User Enter a username Note: It is a common practice to create usernames as one word and all lower case. Enter an email address Note: As long as the email is in the proper format (name@site. You cannot have two users with the same email address. Select at least one role of your choosing. At the end of this activity.

you should be able to: Locate the permissions settings Locate the list of existing roles Locate where you can create a new role Activity: Click on People in the admin menu. Click on Permissions.This activity provides instruction on how to locate roles and permissions in the administrative screens. Observe the list of permissions and which permissions are assigned to the roles. Click on Permissions again. Observe that permissions assigned to the authenticated role are also checked for the other roles and cannot be removed until the authenticated role no longer has that permission. At the end of this activity. . Hover over Permissions and click on Roles Observe that you can add a role.

User Account Settings (example) Example: User Account Settings This activity provides a brief review of the Account settings admin page. At the end of this activity. Activity: Click on Configuration in the main menu.). Note: If you allow anonymous users to post on your site and you would prefer to have them labeled something other than anonymous (e. etc. . Guest. Observe the name for anonymous users.. you can change it here. Click on Account settings. you should be able to Locate the Account settings admin page Recognize the user account setting options.g. Visitor.

Observe the options for registration.g. maintenance admin. . Note: If you want to create more than one type of administrator role (e.Observe the administrator role selection option. Observe the options for cancellation.) you can choose which admin role will automatically receive permission to use modules and features on the site as they are added. how much control do you want to have when it comes to the process used to create and validate the account. site admin. configuration admin.. Note: Your first decision is whether you want your users to create their own account and if yes. etc.

You will need your own account at the addthis. Site Configuration Configuration This section reviews configuration settings that are unique to the site owner and might need to be configured. Review the list of email templates and the message that send. you should be able to identify which configuration settings need to be customized to your site needs. CAPTCHA provides a test that users must pass in order for their content submission to be accepted. reCAPTCHA “improves the process of digitizing books by sending words that cannot be read by computers to the Web in the form of CAPTCHAs for humans to decipher. provides a way for you to provide links to social networking sites and services that site visitors can use to share your content. delete it). provides a way for your site visitors to share your content with others on the web using one of many different social media services. Site Follow Links Activity This administration page.com/recaptcha/learnmore) Sharing with Others This administration page. located at Configuration > Site information.A means of overriding the home page with another page Error pages . consider enabling one or both options. you should be able to: Identify the administrative interface that contains the site name Identify service-based features supported by external sites Identify features that help engage site visitors and site followers Recognize administrative features that support site performance Distinguish between content types and web forms Site Information This administrative page. you can block it. if the goal is to simply block a user from logging in. you will need to decide the practice for managing the user’s content.A brief phrase that appears under the site name in the header E-mail address .” (http://www.Which appears in the header of the site Slogan . Note: These email messages are used for accounts in general and should not be modified to accommodate user registration for a specific event or purpose as that specific event or purpose might not apply to all instances of the account process. It is a deterrent for automated spam bots that post messages to online forms. Performance Monitoring .The option to send users to pages with a custom default error message Spam Blocking This administration page is located at Configuration > CAPTCHA.Not applicable for the OpenPublic home page Default front page . located at Configuration > Addthis.Note: If you need to cancel an account (e.. At the end of this section. At the end of this section.google. provides the following options: Site name . Note: If your user’s identity would add credibility or just make for a more inviting experience. It provides analytics about the bookmarking and sharing activity of your users when they use this feature. Initial Configuration Initial Configuration This section briefly describes and demonstrates the features that need to be configured in order to make the OpenPublic installation unique to the site owner. Instead of cancelling an account. Observe your options to allow users to add a picture and signature. located at Configuration > Site follow links.g.The default e-mail address for the site Number of posts on front page .com site.

Contact Us . The content area is where a node or a view page is displayed. At the end of this section. . You will need a Google Analytics account and key. you should be able to: Define the role of a region Theme Regions Regions display blocks. you should be able to: Describe the purpose of the theme and its regions Create a vocabulary Enable a module Create a content type Add fields to a content type Define a path alias pattern Create a section landing page with a view Add a view page to the main menu Create a block Display a block Themes and Regions Themes and Regions This section provides a quick introduction to the theme regions that are used to manage the page structure.Performance has two perspectives: How well your site responds to requests from your visitors How popular your site is perceived to be There are several site administration pages that provide performance related content. Feedback . nodes. Sidebars run vertical on the page and will flex in length as the content in the blocks changes. At the end of this section.Configuration settings that help ensure your site can quickly deliver pages to your visitors Logging and Errors .Configure access logs and content view counts Google Analytics . text. The illustration below shows the regions used by the home page. OpenPublic comes with three forms used to foster communication. menus. Performance . It is assumed the e-mail notices would come from a third-party service such as Constant Contact or Campaign Monitor. Get Updates . etc.Configuration settings for your system log and error displays Web Form Configuration In addition to content types.A form used to collect comments about the site from its visitors. view displays.A form used to collect an e-mail address from visitors who wish to receive e-mail notices. Site Structure and Sections Site Structure and Sections This section introduces key functionality in Drupal and examples of the functionality used to define a site section. Statistics .A service that can be enabled to allow Google Analytics service to monitor site interaction.A form to allow visitors to send the site administrator a message. Some regions are referred to as sidebars.

The illustration below shows the regions used by section pages. Taxonomy Basics .

Categorizing Content This section reviews a different type of content. you should be able to: Locate the taxonomy admin screens. OpenPublic Vocabularies Three content types have a vocabulary: Blog entry. press release. Each vocabulary allows content developers the option to enter the terms they feel best describe the blog. the terms that are used to categorize content. you should be able to: Define taxonomy in Drupal Describe the purpose of the vocabulary Distinguish between predefined vocabularies and free-tagging Definition A Drupal taxonomy is made up one or more vocabularies and each vocabulary is made up of one or more terms. . Tagging Strategies Two strategies: Predefined term select list (often referred to as a taxonomy or “controlled taxonomy”) Free tagging (sometimes known as a folksonomy) Predefined: Content developers can choose one or more terms from a predefined list of terms. Free tagging: Content developers can create their own terms or reuse terms previously defined by other content developers. Activity: Go to Structures > Taxonomy Click on add terms for the Blog Terms vocabulary. At the end of this section. Add a term to a vocabulary. and Document. Vocabularies and terms are used to categorize content. Complete the form. and document topic. Press Release. Example: Add a Term to a Vocabulary This activity introduces the taxonomy admin screens and the data associated with terms. At the end of this activity.

Weight: You can manually manage the order in which the term appears by selecting a weight or you can view the list of terms and order them there. Description: Type a short description if you like. you are taken to page that lists other nodes that have been tagged with the same term. At the end of this activity. Name: call the vocabulary Event type. Parent terms: A term can be a child to one or more parent terms. you are returned to the blank term form. Note: You should see the terms you added when you created your blog. URL Alias: Leave blank. URL Alias: Leave blank Note: If you click on a term that has been assigned to a node. To see the list of terms you have added or to change the order of the terms.Name: Enter a term Description: Optional Note: You can display terms and their descriptions using the Views module. Note: When you save the term. Click on add terms for the new Event type vocabulary. Relations: Click on Relations to see the options. This field provides an option to provide an alias to the default URL associated with terms. you should be able to: Create a vocabulary Add terms to the vocabulary Activity Go to Structure > Taxonomy Click on Add vocabulary. Save the term. click on Blog terms in the breadcrumb menu across the top of the form. Relations: Leave as <root> . Name: Type Conference. Example: Creating A Vocabulary This activity describes the steps for creating a vocabulary. Save the vocabulary.

Check the box next to each module. which modules you have installed. you should be able to describe the purpose of the context feature. Party. Each context can display one or more blocks. Repeat the process and add the following terms: Training. At the end of this section. Activity: Click on Modules in the admin menu bar. Locate the Date Pop-up and Date Views modules. . What is a context? A context is one or more conditions that need to be met in order for a reaction to occur. your list of conditions and reactions could vary. For instance. you should be able to: Enable an existing module. At the end of this activity. Save configuration. Other conditions that can be used to trigger a reaction include but are not limited to: Context Menu Taxonomy Taxonomy term User role User page Views You can use context to not only show blocks but also: Breadcrumbs Debug Menu Regions Theme Depending on how you have your site configured. Enabling a Module (example) Enable a Module This activity provides practice enabling modules that have already been uploaded to the server. Contexts Context This section provides a quick introduction to the context way of displaying blocks. if the path is events. then show the events block.Weight: Leave as 0. Webinar.

select the context that matches the conditions under which your new block should appear. At the end of this section. Some contexts control block displays and some manage the display of breadcrumbs. If no condition matches. create a new context. you should be able to: Distinguish between different types of content Create different types of nodes Identify the types of data associated with content types Recognize content type configuration settings Add a term to a vocabulary Add a node to the main menu Upload images using two different techniques Find existing nodes Create relationships between nodes . OpenPublic Content OpenPublic Content This section explores various aspects of nodes and their content types. If you want to add a block to an existing section.OpenPublic Contexts OpenPublic has several contexts as shown on the Structure > Context admin page. The illustration below shows the order in which the OpenPublic contexts will appear. The new context should appear below the site wide before context.

The node can be used to fill a page on your site. It provides a way of organizing the content types in context with what is covered in the OpenPublic Tour section. The content types that create a single page of content are: Blog Document Press release Profile Resource Services Site page .Content Types Types of Content This section summarizes what is discussed in the tour and reinforces what a content type does. site pages. press releases. a block. or even a popup window with an image. you should be able to: Describe a content type Recognize the purpose of the specific content types Locate the list of content types OpenPublic’s Content Types During the tour of OpenPublic. you were introduced to various types of content such as blogs. A list of content types you can create is seen on the Add content admin screen. At the end of this section. Each content type on this screen is an online form that you fill in. The content you enter or upload to the form is used to create a node. and more.

The last content type on the list is Webform. . Photos are uploaded to this content type and assigned to galleries created using Media Gallery. Click on Blog entry from the list of content types. Observe the Create Blog entry form.The content types used to display content in a block are: Editor’s Choice Home Page Feature There are two content types that work together to create a dynamically generated page of content: Media Gallery and Photo. At the end of this activity. It introduces various types of fields found in content types. you should be able to: Create a blog node Add an image to a node Click on Add content from the shortcuts menu bar. OpenPublic comes with three forms: Contact Us Get Updates Feedback Creating a Blog Entry Node (example) Example: Creating a Blog Entry Node This activity provides the steps for creating a node when the user has access to the administrative menus and interfaces. This is a special content type used to create forms that collect data from your visitors and allow your visitors to communicate with you.

If the terms you enter already exist. Related terms: Enter three terms separated by commas Note: You can include multi-word terms. . just don’t put a comma between the words. Author: Start to type “James” and then select the profile node for James Jones. they should appear as options as you type the term (similar to how James Jones appeared in the Author field. but is available for sub-themes and extensions. Note: This field is not used by the default in OpenPublic. Title: Type a title of your choice.Complete the form. You can pre-populate the term list by going to Structure > Taxonomy and click on add terms for the Blog Terms vocabulary. Show Author Info: Leave as it is.

you can leave as is or assign this node to the new user your created. you can revert to the previous version as long as you have used this feature. Note: This information is not required. Text format: Select Full HTML from the dropdown. . Note: If you wanted the blog to show on the main menu. Note: You can preview before saving if you wish by clicking the Preview button. Note: It is a common practice for a blogger to blog offline and someone else to upload the content.Body: Enter a simple text sentence. OpenPublic will only use the first characters of the body when a short version is needed. Note: The administrator. Select an alignment from the Alignment dropdown (shown in image above). Note: OpenPublic does not use “Promote to Front Page” by default. Note: You may write a short “teaser” sentence for the item. Copy and paste it a couple times to form a paragraph. URL path settings: Leave as is. By default. By default. staff. Note: Images are added to nodes using different methods depending on the content type. If you find you don’t want to keep the edits. To see the path patterns. You can add more editor buttons by going to Configuration > WYSIWYG profile and clicking on edit for the Full HTML input format. HTML Editor buttons: Add an image to the body of your blog: Click on the image icon in the HTML editor. Note: OpenPublic comes with the Pathauto module which is used to generate user-friendly URLs based on a predefined URL pattern or template. Authoring information: As the admin. Select an image Note: You can use this feature to upload an image to the server. Observe the editor that appears. OpenPublic comes with some sample images. Try typing the username you created previously. Note: This is used when you are editing a node and wish to keep a copy of the node in its previous state. Menu settings: Leave unchecked. Comment settings: Leave as is. This authoring information is not displayed for blogs. go to Configuration > URL aliases > Patterns. Teaser: Leave blank. you would check this block and assign the node to the main menu. Revision information: Leave unchecked. Click Insert file. which can be used in lists. that is why the author field is provided. but this feature is available for extensions if desired. Click Save. You can override this setting on a node-by-node basis. Click OK. Note: The content type has configuration settings that apply to all comments for this content type. Click on Browse Server. It is used to give your node an identifier in the event you will be exporting the node. Machine name: Leave blank. Publishing options: Leave as is. the Blog entry content type has been configured to have comments enabled. and editor roles can use Full HTML.

.

you should be able to: Add a vocabulary field to a content type. you should be able to: Create a content type. Note: This field name format is consistent with the other vocabulary term fields on other content types in OpenPublic. Adding Fields This activity provides steps for adding two types of fields: vocabulary terms and date field. Submission form settings: Change the label from Title to Name. Click Save and add fields. Publishing options: Uncheck Promoted to front page. Leave other setting options as is. Click on Add content type. Machine-readable name: Type event. Field name: Type event_terms. At the end of this activity. Description: Type Used to post events to the site. At the end of this activity. From the Manage fields admin interface for the Event content type. . Go to Structure > Content types. Add a vocabulary term field. Name: Type Event. Label: Type Type of Event. perform the following steps.Creating a Content Type (example) Create a Content Type Creation: This activity provides the steps for creating a content type. Add a date field to a content type.

When the next configuration screen appears. Label: Type Date. Save. Form element to edit the data: Select Text Field with Date Pop-up calendar. Type of data to store: Select Date. Click+hold+drag the Type of Event field under the Name. Field name: Type event_date. Change the sequence of the fields. Manage the Display of the fields. select Optional from the To Date dropdown. . select the Event type vocabulary in the Vocabulary dropdown. review your options but leave unchanged. Save field settings. When the next configuration screen appears. Save settings. When the next configuration screen appears. Click+hold+drag the Date field under the Type of Event. When the next configuration screen appears. Save settings. Save.Type of data to store: Select Term reference. review your options but leave unchanged. Save field settings. Form element to edit the data: Select Select list. Add a Date field.

Editing Content Types Review a Content Type This section introduces how content type forms are created and managed. The content provided is for reference.Label: Select Inline for the two fields you just added. and displays Editing Content Types Go to Structure > Content types Click on Edit for the Services content type Observe the options across the top of the screen. At the end of this activity. Save. Format: Change format to Medium. . you should be able to: Locate the list of content type forms Distinguish between the basic settings associated with a content type. fields.

Do not enable this feature for any content types other than Editor’s Choice. Comments per page: Select the number of comments you want to show before a pager appears. Anonymous commenting: If you allow anonymous commenting. Publishing options: Contains options which control how content is handled when published (e. This is often used to provide information about or instructions on how to use the form. Comment settings Default comment settings for new content: Leave as is Note: Comments may be open or closed. promotion to front page) Default options: You have seen these options when creating your blog. This is the place that controls which option is chosen by default when creating a node.Basic Settings Name: You can change the name of the Content Type Form Description: This is used to help your content developers know the purpose of the form and when to use it. select what is required of your visitor. Note: This option displays the comment form at the bottom of the node. Preview: This is where you can control the preview requirements for nodes created with this content type. Preview comment: Same option as preview node. Title field label: You can change the label of the title field. “Hidden” is not typically used as a default. Submission form settings: Click on this tab and review the options. Explanation of submission guidelines: If you want text to appear above the form you can insert the text here. Threading: Comment replies are shown under the comment if checked. or you may set comments to be hidden from view by default. Show reply form on same page as comments: Leave as is.g. Available as a block: This feature is provided by the Node Block module and is used by the Editor’s Choice content type so that content added to an Editor’s Choice node is actually a block that can be enabled. Comment fields and display . Allow comment title: Also known as a comment subject line. You saw these blocks on your tour.

you should be able to: . images can be added via the HTML editor image button. you can add fields to your comments and manage their display. Diff: This feature is provided by the Diff module and allows you to compare node versions to see the changes. Miscellaneous/Module Enabled Addthis setting: This feature is provided by the Addthis module and controls the share icons that appear at the top of the node. Controlled display . For example. An upload field provides some advantages. You can add others by downloading the field module of your choice and installing the module. or using an upload field. Uploading Images There are a number of ways to upload images to your site in OpenPublic. The following content types offer an upload field Editor’s Choice nodes Home Page Feature Photo nodes Profile nodes Resources Services nodes Site page If a content developer has access to the Full HTML input format. Note: This is where you manage if and how a field is displayed.Note: Similar to a node. the Resources and Services landing page each display the image that were uploaded to the resource and service nodes. At the end of this section.The image can be displayed on another page using Views. Manage display: Click on the Manage display tab. This provides an opportunity to make content display consistently on the site. To hide a title field. Manage fields: Click on the Manage fields tab. Reuse . Default Parent Item: If you want to provide a default menu item so that users don’t have to select it manually. Menu settings Available menus: You can limit which menus are available to the Menu option when creating a node. Note: This is where you can add a field to your content type. Two of the more common methods are using the HTML editor feature.You can apply a style to the image. you can make that selection here. Drupal 7 comes with several types of fields and OpenPublic adds additional field types. controlling its size and how it is displayed. Notice the title field is not included. Images Images in OpenPublic This section describes how OpenPublic provides methods for adding images to your site. you can add a module with this functionality. Click the tab and review the options. Techniques used by OpenPublic OpenPublic provides several ways for images to appear in the site. At the end of this activity. you should be able to identify two techniques for adding an image to a node. Content types that will likely use this option are: Press Release nodes Blog nodes Relating Content Relating Content This section reviews how relationships between nodes can be created and reasons for doing so.

just as a collection of Modules and Features might be seen as a Distribution. An App is a piece of packaged functionality. A collection of Apps might be seen as a full Product. profile. one App only solves one specific problem. It is referred to as a node reference. making Drupal functionality more “pluggable” and inherently easier to use. The goal of the “Apps” module is to reduce the number of steps required of users from discovery to usability for functionality for their Drupal sites.You can relate two nodes by embedding an HTML link to a node in the body of your text. “user friendly” way its main goal. The result is a media gallery node that displays photo nodes. Features.You can use a field to make the connection. Whereas Modules and Features are more developer-centric and provide building blocks for larger functionality. . Field . Content Type Blog entry Editor’s Choice Media Gallery Method The author field creates a relationship between the blog node and a profile node The featured item field creates a relationship between the Editor’s Choice node and various types of nodes (blog.Identify three ways to create a relationship between nodes. Upon installation. Result The result is a link to the author profile The result is a node block that displays another node. press release. configuration UI. These are the users we are thinking about when we discuss Apps: An App is an installable package which solves a concrete task specific use-case. an App delivers a polished solution for a specific need. typically a non-technical user of a Drupal site such as the site administrator. Referencing Nodes in OpenPublic OpenPublic provides three content types that use a field to create a relationship between nodes. This allows photo nodes to be placed in more than one gallery. Apps are larger blocks of completed functionality. Unlike a Distribution or Product. Technically. The media field is used to create a relationship between a media gallery node and one or more photo nodes. and Themes along with some simple additional code that publishes the existence of the App to the rest of the App infrastructure. we’ll streamline the end-user experience. sample content. The complexity of its installation should be hidden as much as possible keeping the process uniform and simple. What distinguishes an App from a Module or Feature is that the App includes all of the additional polish. The goal of the App concept is to make extending the functionality of a Drupal site with discrete functions in a polished. an App is a collection of new or existing Drupal functionality. HTML . Distinguish between HTML links between nodes and node references How can nodes be related? Terms . and services) and then displays the related node in the Editor’s Choice node block. end-user UI. What is an app? Before we say what an App is it’s helpful to know who it’s for: An App is for the end user. including Modules. and documentation that are needed to fully meet a specific need. resource. Apps This section is coming soon to OpenPublic Documentation! Apps Overview Apps: An Introduction The purpose of this section is to introduce the concept of "apps" in Drupal.When two nodes share the same term they can be considered related. By creating a specific protocol for installing and configuring apps. They share a common vocabulary term.

and it solves it completely. but perform their function very broadly. Consumers & end users are a picky bunch. solve it well. but also give feedback on that idea and rate the idea. First. but perform vital functionality as modules. Apps resolve discrete.What is the purpose of an app? The primary purpose of an app is to simplify and make consistent the discovery. for very specific end-users in a highly user-friendly way. fork. and therefore do not fulfill the “specific functionality” guideline for apps. or an ImageSlideshow app. modules like CTools or Panels add enormous functionality to a Drupal web site. that apps are generally built for the benefit of Drupal consumers. and solve it completely. etc). and graphics that tell an end user what the app is. solves it well. or undermine. And second. by simplifying the process of adding functionality to one's Drupal web site. an app will both keep track of data in some way (as a content type. what it does. or too big a problem: Apps that install functionality into many different places in a site. in nature – they are designed to solve one problem. To be clear from the beginning: the Drupal framework for creating functionality (modules). "Almost" is what drives end users 'back' to find something else. It is trying to solve too many problems. Drupal itself solves 80% of these problems. The App Philosophy: Why do apps exist? There are a couple of things about Apps that are important to understand. Rather. and then displays them on a map. Ideation provides feedback functionality for organizations.the ability to solve very specific problems. it is not a good app. To explain further: Apps exist to solve specific problems for specific users. and for delivering combinations of functionality and design (distributions) is a solid framework.. and giving administrators the ability to accept or remove ideas from rotation. Borrowing from the Pareto principle. let's clarify the concept of "Drupal consumer. It solves it well. for creating specific designs (themes). is a great example of an app that solves one problem. Many excellent modules would not be considered an app. of a solution. "almost" isn't good enough. a Project Mapper app that provides geolocation around specific projects for an organization. with a beautiful interface and simple-to-configure set-up.. apps adds another piece to this framework -. and require a solution to provide it. will not be good apps.' But in a distribution or a SaaS product. enable. while the Apps module provides an interface for delivery of modules and their . installation. Generally." A Drupal consumer is a site builder or site administrator or site owner (such as a Blogger) who is using a Drupal site. or that try to solve a large host of problems. These consumers are not visitors to sites. Components of an app: At a minimum. using Drupal. So. that apps exist to solve specific problems for specific users. specific needs for very specific groups of users. which synchronises site users with a MailChimp list. Apps can solve this problem. an app should include the following components: specific functionality or the connection of the end user to a third party service that provides specific functionality the ability to install. but I also need this . & disable. which displays your images in a slideshow. from which the concept of "apps" does not deviate. For instance. Apps are built for Drupal consumers: First. but rather. screenshots. and how it is used What’s Not an App: The following are characteristics that preclude something from being an “app”: It is not a complete solution: if an app only provides raw materials or building blocks. and solves it completely. or to provide multi-function solutions to complex problems. Examples include a Mailchimp app. Apps do not seek to add blanketing functionality to every part of a site.g. the owners/administrators who make decisions about what content and functionality they need for their site. setup and use of a specific piece of functionality on a Drupal site.” created and contributed by Development Seed. What is the difference between apps and “Features?” Features allows the export of configuration to a module. as opposed to modules which are generally built for the benefit of developers or site builders. an app like “Ideation. A CRM app would likely be too large a problem to solve) Can any module or theme be an App? Apps are specific and not broad. (e. cleanly settings or configurations for the end user to customize their use of the functionality descriptions. uninstall. etc) as well as use it or display it in a specific way (on a map. giving users the ability to not only suggest ideas. Drupal consumers are often not comfortable working in the code of a web site and may not have the knowledge to do so. but consumers of Drupal need that last 20%. They say things like 'it's almost there.

as well as an API for configuration." Apps need not be Features. if you're more of a businessy person and less of a technical person. Technical Components: Distributions: a collection of Drupal code combined with an installation profile to accomplish specific functionality for a user group Apps Manifest Specification: A technical specification that describes which apps are available. MailChimp is the "3rd party service provider") . It is thought appstore servers will be focused on serving a particular domain problem. not outside of it. and use with Drupal or with a specific distribution of Drupal such as OpenPublic. The Apps module wraps a layer of usability around Drupal functionality that makes it easier to use and share among a distribution's end users.g. configure. if desired. Organizations who want to integrate their third-party applications should also consider creating an app. allow searching over the catalogue. self-contained and individually exportable and Features support that. Apps module: the open source Drupal module that allows for the installation and use of apps in a Drupal distribution. robust and secure UX. An App may actually consist of more than one Feature to encourage Features to focus on smaller blocks of general-purpose functionality. They can contain Content Types. Open Public. prompt for any necessary technical and monetary requirements and install them on the chosen site. This is an implementation of an App Client as defined above. data storage. Who can create an app? App development is open to any member of the community. Context/Spaces/Strongarm/Boxes settings.g. one client could browse multiple “app markets” pointing to different servers. but a really good start for an App is to simply create a Feature. It’s likely this would be a module. and other appstores. synchronising versions with d. It is a consumer of data that adheres to the Apps Manifest Specification. and how they relate to Drupal Core. Definition of Roles Involved in Apps App owner: the person or organization who owns or maintains the code for the app. adding a mailchimp signup form block to a page’s region. The process of ‘installing’ an app should be a simple click operation for the end user and the app framework would take care of any underlying dependencies required. Apps Manifest API: the bi-directional interface between the App Server and the App Client which mostly consists of requests and deliveries of data that adheres to the Apps Manifest Specification. General Concepts: App: a discrete piece of functionality that is focused around managing the UI interactions and data to perform a particular task. modules. and associated information such as descriptions. SubHub. Permission settings. How do Apps work with the rest of Drupal? Apps are designed to work within the Drupal framework. what their dependencies are. App Server: An app server is responsible for publishing a catalogue of its apps. Technically. Panels pages. It is required that the client abstract as much technical information away as possible making the process of using and extending a Drupal installation as simple as possible.dependencies. You'll often combine them. (e. Apps that link users to other applications such as analytics. etc. and to show the relationship between that ecosystem and the larger Drupal ecosystem. A process that should convey a simple. logos. Another way to look at it. The following diagram outlines how Apps work in concert with the Drupal framework. packaging and delivering the apps and providing a payment infrastructure. or social media aggregation can provide new customers to companies seeking integration with open sources CMSs like Drupal distributions. Features. e. 3rd party service provider: a company who provides a service that they would like to make available to a platform's app consumers through an app. Views. The App Server is a provider of data that adheres to the Apps Manifest Specification. if MailChimp wants to sell its services to users of the SubHub platform through an app. App Market: An app market is the user interface that allows a Drupal site owner to extend the functionality of a site with apps located on a App Serve and provide payment processing and checkout functionality as needed. might be this: the Features module packages up Drupal functionality and configuration in a way that makes it easy to use and share among developers.g. Apps can be developed by organizations or individuals who want to make their functionality simple to install. and SaaS platforms. The Apps Ecosystem The purpose of this section is to define the components of the "ecosystem" around Drupal apps.o. wrapping the Apps layer of usability around the Features packaging of functionality. etc. e. You need a good use case and functionality that can be isolated. App Client: An app client would allow the user to browse/discover a remote collection of apps. distributions. and screenshots.

please see Apps Documentation. PLAN II. Identify components you need to build 3. PACKAGE your app IV. Overview The process of building an App for OpenPublic can be summarized in four steps. PACKAGE IV. And if you're interested in learning about the Open App Standard please visit our groups at groups. a platform owner will also be an app market owner. SUBMIT your app Introduction The idea behind Apps is to use the existing building blocks of Drupal to create a more discoverable and usable set of functionality for a Drupal distribution.g. creating. curates a collection of apps for that app market.” App consumers: app consumers are the site administrators or site builders who make decisions about which functionality to include on their sites. a development shop using OpenPublic to implement sites for public sector clients chooses apps appropriate for each client. So. (e. Define the problem 2. This owner defines which App Client gets used. Build the app's main module. Identify what can be contributed back 4. BUILD III. Often.g. and in that case.” but not the “platform owner. PLAN 1.** Direct app consumers: site administrators or builders who are making decisions for their own sites. Identify contributed modules to use 2. Define the audience 3.drupal. Define the solution 4. this organization would be the “app market owner. SUBMIT Steps to Building an App I. BUILD your app's main module III. III. PACKAGE 1. For more information about Apps generally. SubHub is the "platform owner" of the SubHub SaaS offering. and which stores it provides.org. our goal is that building an App for OpenPublic is a simple and straightforward process. This development shop is an "indirect app consumer") How to Build an App Building an App for OpenPublic Introduction Overview I. each with a set of activities. and submitting your app to OpenPublic. However. BUILD 1.Platform owner: the person or organization who owns or maintains a distribution or SaaS platform which utilizes apps or an app market. Prepare the app for its distribution 2. and makes the app market target specific platforms.** Indirect app consumers : site builders who are making decisions for their clients' sites. Build the configuration page . Phase2 Technology is the "platform owner" of the OpenPublic distribution) App market owner: the person or organization who hosts an app server. They are: I. another organization could host an app market and implement it in an instance of an open source Drupal distribution. We've laid out the following steps to help accomplish the goal of planning. PLAN for your app II. (e. Contact the OpenPublic team to discuss inclusion II.

the first thing to do is to understand the person who will be using it. b) Event app Site Admin: * Site administrator creates new content . local. Put it somewhere! -.Create a project on d. Define the Solution: How is this app used? Use Cases: how the admin and user interacts with the app. Once you've identified the problem and the audience.Tag on d. and of your app’s specific area of knowledge? Example of a Defined Audience: this is for a public sector organizations who need to publicize their events to their constituents 3. . If it will be used to regularly add content to a site. and take a look at existing sites to see how the problem is being solved now: How is the data being published? What workarounds are people using? What third parties are engaged in this solution? What’s missing from the current solutions? Which steps could be reduced or removed to make the process easier? Example of a Problem to Solve: create a calendar to tell people what the agency is doing and when 2. Steps to Building an App I.3. We're going to come back to these as we run into more as we go. Build default content 4. At Phase2. we think about the exact problem we’re trying to solve and who we’re trying to solve it for. of CMS. Appear on calendar. This includes both the people who will be implementing the app technically and those who will be using it on a day-to-day basis. or federal organization? Not every app is for every OpenPublic user--if it was. let's look at some use cases for an event promotion app for OpenPublic: a) Event app End-User * End user viewing a calendar: From the homepage. it's time to start building a solution. it would be a better fit for OpenPublic’s core installation. Continuing our example above. See an event name on the calendar. description. Submit the app Let's get started. who will be the person using it? What is their level of knowledge of Drupal. follow the upcoming events link to a calendar. as we look toward more community-generated Apps. consider building a couple of use cases. who. specific problem you're trying to solve. Define the Problem: What is the Problem we're trying to solve? The first thing to understand is the exact. where.add event: where. click on it and see what. when. Test your app IV. categorized(?). etc. to show exactly what you want the end user and site administrator to be able to do with this app. To start. SUBMIT 1. who details of the event. PLAN for your app 1. One way to do this is to take a page from traditional product design.Drupal. So. Define the Audience: Who is this app for? (who is going to INSTALL the app?) To begin. and the process of "solving a specific problem" is built into our solutions analysis here at Phase2. many of our ideas for Apps come from active projects. Create event. state. it will be important for all of us to engage in more community-generated solutions to the business problems emerging within the group.o for it and add all of your content -. (?) 2.org or some other location -.o for distributions/ apps. Does it solve a problem for administrators or staff? Is it for a non-profit. However. when.

Build a module with the "custom" pieces. Contact the OpenPublic team to discuss inclusion If you haven't yet. discrete problem? -. and a page view 3. in a complete way. if you do not maintain that module yourself. In considering the solution. What modules are we going to use? First. and with dependencies to the community contributed modules they've created or that already exist. We instead use a short checklist that considers the whole app’s "experience" for our user: Does our solution address the exact problem we identified? Does our solution solve any other problems that need to be stripped out or broken up into two or more apps? Can our solution be executed technically? Our goal is to identify the enhancements that will make our App useable and easy to explore. we strongly recommend contributing back any and all modules that you create specifically for this app. calendar display 2. Build the app's main module. We start by looking at what we already have and asking ourselves: Is there an existing module that could be used for this App? Have we built this solution for a site before? Then we look at the solution’s main question: "what is the simplest and most concise way to solve this problem for this audience?" Often. we strongly recommend contacting the maintainer(s) of a module to let them know you intend to use it for an App you're creating. views. A few recommendations to consider as you build your app's main module: . some ideas for contributed modules to use would be: Location module. In our calendaring example. If the solution we see in front of us is as concise and specific as the audience and the problem we’ve identified. you should use contributed modules to accomplish your build. or some suggestions on best practices for focusing the functionality of your app.Knowing these use cases. 4.Does it solve the problem completely? -.Can you describe it in a minute or less? II. What part of our functionality can we generalize into a new contributed module. BUILD your app's main module 1." 5. Apps are part of the open source Drupal community. Apps do not seek to replicate existing contributed module functionality. we don’t just consider the app’s main module or function. and other aspects of the solution. content type. perhaps we'd choose to build a content type. As best practice. This is the point in the process when we find that it’s helpful to return to the core elevator pitch and user we identified before. and which solution solves the question best is key. It may be that we have some ideas for how it might best serve OpenPublic's audience. and whenever possible. we can then build a solution. Double check the checklist: apps checklist -. so understanding what the potential solution set is. so that it "solves a discrete problem for a specific audience. In our example. or an enhancement to a current module? In addition to using contributed Drupal modules to build your App.Does it solve a problem for a specific audience? -. we’re on our way to a great app. there is more than one way to solve a problem. and contributing back your modules is what helps the community grow. now is a great time to contact the OpenPublic team to discuss your app. That can include modules. a view and a block view.Does it solve a specific. it's important to consider whether there are existing modules that you can use to build your app. 4. What pieces do we need to build just for this app? The next step is to identify what functionality you might need to build specifically for this app.

org/files/projects/test_app-7. description iv.x-1.txt Features: Your main app module should be Features-based.0-alpha4 libraries[arc] = arc downloadables[arc] = http://github.org/files/projects/ctools-7. screen shots ii.gz downloadables[ctools 1.0-beta3 dependencies[ctools] = ctools 1. Create the manifest. for the apps listing in the OpenPublic apps server.Does it address the defined use cases? III. contributor information b.Did you seek out existing modules? -. it's time to package up the assets for submission.drupal. Build checklist -. The KIT specification for Features can be found here: http://drupal. Example: "Open Public's Project Mapper is a great way to present your work on a beautiful map.Kit Compliance: Your main app module should be KIT-Compliant.x-3.Is it kit compliant? -.tar. icon iii. Gather Assets i.0-beta3.0 downloadable = test_app 1.Did you contribute back new modules to Drupal.txt. Build directory for all of the parts and add everything to it c.jpg logo = logo.x-1.phase2technology.0 downloadables[views 3.0. PACKAGE your app 1.app file The manifest.git/blob_plain/refs/heads/master:/kitf.gz Name of the App: example: Project Mapper Description that tells what it does and who its for.com screenshots[] = screenshot.0-alpha4] = http://ftp.drupal.tar. you’ll need to implement the hook_apps_app_info in the module.0-beta3] = http://ftp.png dependencies[views] = views 3. Apps uses the standard hooks architecture of Drupal for its API.tar. 5. Here's how: a.org/files/projects/views-7.jpg screenshots[] = screenshot2.org/project/kit.app should be an ini file with the following items name = Test App description = Test App is used to show how apps work machine_name = test_app version = 1. For your app.gz downloadables[test_app 1.api.org/node/580026 Apps API: You’ll find the Apps API at apps.org? -.drupal. It provides you with a landing page that shows your projects as pins on a map and as a grid of image thumbnails giving your users a quick way to get an . Documentation and instructions for packaging modules as features can be found here: http://drupal.0.0] = http://ftp.org/project/kit http://drupalcode.0 author = Phase2 Techonology author_url = http://www. Prepare the app for its distribution Now that you have your app's components built.0-alpha4.com/semsol/arc2/zipball/v2.

overview of your activities. Each project has its own page for publishing detailed information. You can create new projects by simply logging on to your Open Public Site and filling-out a web form.", Machine name: name of the main module Version: which version of the app this is. e.g. 1.0-beta1 Location: where the main module is found. e.g. http://drupal.org/files/projects/openpublic_projects _7.x-1.0-alpha3.tar.gz Author: who created this app; e.g. Development Seed Author URL: link to the author’s site; e.g http://www.developmentseed.org Screenshots: an array of screen shot relative to the path of the manifest.app A list of screen shots that will show up in app interface. e.g. http://appserver.openpublicapp.com/sites/default/files/apps/project-mapper-screenshot1.jpg Logo: a logo or icon for the app itself; this path should be relative to the manifest.app path Dependencies: please list all the modules that need to be installed for the App to work; and any modules that those modules depend on. The key is the name of the module, and the value is the name of the downloadable of which it is a part Libraries: specify required libraries and reference the keys in downloadables Downloadables: please list all downloadables and the location from which they can be downloaded. Downloadables keys are referenced from the dependencies. You should also list your app module here so it can be downloaded.
d. App Specific Hook

This can be found in modules/apps/apps.api.php In order to provide a more integrated experience to the App console your app should implement hook_apps_app_info. This module allows you to describe certain aspects of your Apps functionality to the App Console. This hook is to return an array with the following information Key demo content description demo content module demo content enabled demo content enable demo content disable configure form post install callback Notes This tells what the App demo content will do. It is placed on the configure form along with the mechanism for enabling/disabling the demo content. The preferred way for an app to provide demo content is to have a module that when enabled will add demo content, and when disabled will remove demo content. This module should be a submodule of the App but it is not required. If it is not a submodule of the main App module it should be part of the manifest dependent modules. If demo content is provided as part of an existing module, then this will be the function call that should return TRUE if demo content is currently enabled, FALSE otherwise. If demo content is provided as part of an existing module, then this will be the function call that will enable/install the demo content and should return TRUE if it was successful. If demo content is provided as part of an existing module, then this will be the function call that will disable/uninstall the demo content and should return TRUE if it was successful. This should be a function that will return a Form API (FAPI) array that will be rendered in the Apps' App Console configure form. This will be a function that will be called after the App is enabled initially or if the app has been uninstalled.

2. Build the configuration page
Oftentimes with Drupal modules, when you are finished installing you need to track down (if you even know to look) where the modules many configuration forms are. Sometimes they are in admin/config sometimes they are in admin/structure, other times in a more specialized location. The point is that, currently in Drupal, once a module is enabled you need to track down some forms to allow for information gathering and configuration. Drupal 7 makes it a step better by providing a configuration link in the modules page but sometimes you want/need more. Here is where Apps shine, giving you a configuration form presented immediately after enabling your module and in the context of where you read about, downloaded, and enabled your App. At any point in the future you can return to the App Console and find your app and configure it directly form the console. This config form can be use to gather API keys, set permissions or any other thing might need to do. This configuration destination also natively support the enabling/disabling of demo content.

3. Build default content
One of the hardest things about installing new functionality in Drupal is that often times you never know quite how to use it. The demo content functionality of Apps aims to lower the barriers to using an App by provide soem default content that can be easily enabled and disabled. Demo content can be implement in any way you see fit. Some options are: 1. Manually create nodes, taxonomy, menus, etc and track their individual ids to that they can be removed later. 2.

2. Use Feeds to import/export content from included data files (see: Ideation app) 3. Use Default Content to give Nodes machine names and export them with Features 4. Use UUID Features to export content into Features for inclusion. There are countless ways to crack this nut, the real goal here though is that you can turn this content on AND OFF. This allows a user to play with content to see how it works and when they are done, disable the module and have all of that installed content disappear so they can start building their own content.

4. Test!
It's important, once your app is built, to test it thoroughly before submitting it. The Apps module provides Development Mode, a way to locally develop and test apps. Enable the development console from the Apps Configuration page located at admin/config/system/apps Reference the manifest from the module.info and make sure the server is development: apps[server] = development apps[manifests][] = app/manifest.app and place your manifest and images in a subfolder of the module app/ manifest.app screenshot.jpg screenshot2.jpg logo.png

5. PACKAGE Checklist:
a. Can the app install? b. Can you configure the app? c. Can you turn on and off default content? d. Can you uninstall it? e. Does it show up everywhere it's supposed to on installation, and disappear as needed on uninstall?

IV. SUBMIT your app Publish It
Create a project on Drupal.org for it and add all of your content Create a release for your project Tag on d.o for distributions/apps

Submit your app
What You Need to Provide: To submit your app, please create a .zip or .tar file with a manifest.app file as well as any image referenced in the manifest. Submit it to apps@openpublicapp.com

How OpenPublic Apps are Selected
The decision on how to select and approve Apps for a distribution is up to the distribution's owner. For OpenPublic, we've built the following process for evaluating and collaborating with others on Apps: Goals & Process for Including Contributed Apps in OpenPublic: 1. Ideas & Collaboration: The goal is to collaborate with contributors from the idea stage, helping apply best practices for OpenPublic to the creation of the app. This includes providing excellent documentation, training, and collaborative support through code sprints and one-on-one

interaction. This first step should help to identify App solutions that are appropriate for OpenPublic's users, and that fit well within the Apps structure. 2. Support for Building: The goal is for our technical team at OpenPublic to be available and responsive to App contributors as they work through the process of developing and building their App. This can include one-on-one interaction, as well as training and documentation, and will be provided as requested, as well as through some regular group opportunities, such as at Drupal camps and meet-ups. 3. Testing and Submission: The goal is to make the testing and submission process for Apps for OpenPublic transparent and as simple as possible. We are continuing to build components of the Apps module to aid the testing and submission process for Apps in OpenPublic. In addition to this, we'll provide useful feedback on testing results to app contributors, to help ensure successful inclusion in the distribution. 4. Technical Review & Approval: The goal is to provide helpful feedback and ensure the inclusion of technically solid Apps for the distribution. Whenever possible, this includes providing feedback on things that are not working, with specific recommendations for making them suitable for inclusion. 5. (Ongoing) Update & Approval: The goal is to provide ongoing support to App contributors as they provide updates to their Apps. Support in the form of testing and review of updated Apps will help to ensure best practices on an ongoing basis. Evaluation Criteria for Inclusion in OpenPublic: As distribution owners, we are advocates for consumers of OpenPublic, trying to create consistency and confidence in using Apps in OpenPublic. We are not interested in "cherry-picking' specific apps or showing preference for specific organizations, companies, or solutions. Apps for OpenPublic, even if they have similar functionality or form, should co-exist in the App console, as certain solutions may be better for certain audiences. A great app in OpenPublic will have the following: 1. A clear solution to a discrete problem for the OpenPublic audience: It solves a specific, discrete problem It solves a problem for a specific audience There's a defined use case for a public sector user It solves the problem completely It can be described quickly and easily 2. Sound architecture and construction There's a configuration panel There's default content to show what it does You can turn off and turn on that default content. The description matches the functionality It installs and uninstalls cleanly It shows up everywhere it's supposed to on installation It disappears as needed on uninstall It is KIT compliant, if it is a Feature The app's functionality meets the defined use cases It does not simply package a contributed Drupal module, but integrates functionality in OpenPublic 3. It is reliable in its representation, stability, and functionality in the Apps console for OpenPublic: The assets (e.g screenshots, icons, contributor information) are complete and of high quality The descriptions are well written and easy to understand to a non technical user There is nothing inappropriate or illegal represented in the app or its description The app does not infringe on anyone else's copyright or trademarked material It exists on a stable server. We always consider drupal.org to be a stable server, but there are others such as GitHub, etc.

Theming OpenPublic
[OpenPublic|OpenPublic] comes with its own simple theme, but it is not intended to serve as an actual design for any website. You need to create a sub-theme, which will look like the base theme initially, and start adjusting it to fit your branding. Once an implementer has setup, configured, and customized their [OpenPublic|OpenPublic] installation it is ready for a new face. Designers and developers can create custom layouts, views, design elements, and style sheets. For additional and more advanced theming documentation, see the Drupal theming here: [http://drupal.org/documentation/theme |http://drupal.org/documentation/theme]

Theming with OpenOmega and Spartan
OpenPublic comes with two themes – OpenOmega and Spartan. Both of these themes are based off of the Omega theme. OpenOmega is the default starter theme and Spartan is a stripped down starter theme that is ideal for development.

and blocks).Why use Omega as the base theme? Omega is a responsive theme. The performance enhancements make Omega the best performing base theme in Drupal7 and the inclusion of a responsive. regions (grid elements. What is Responsive Design? This video explains what responsive design is and how it works with Drupal. where blocks display). mobile-ready. Note: Subthemes and the HTML starterkit are discussed in the next section Omega uses a 12-column responsive 960px grid enabled by default but allows users to use a 16 or 24 column layout instead. which are different layouts and settings for different areas of the site. if the Delta and Context modules are enabled. This page structure allows for a large amount of customization. What else makes Omega unique? Each page on the site is broken down by zones (containers for regions). which means that it tries to be device agnostic and accommodate as many different browser resolutions as possible. Many large sites are using the Omega theme because of its flexibility. The theme also uses contextual layouts. and grid-based theme provides users with the tools of the future. .

css folder contains files for all cascading style sheets. This is useful if you need to alter your content in a more advanced way. go to http://www. There are three ways to create a sub-theme from Omega: Use Omega Tools – recommended for beginners Create a Subtheme Using Drush – recommended for advanced users Create a subtheme manually – if the above 2 situations don’t work To activate the newly created theme.css = narrow spartan-alpha-default-normal. In case you are wondering: Ardi is the name of the first human ancestor ever uncovered by archeologists. You may often find yourself looking in the spartan folder for reference. spartan-alpha-default.info declares basic information about the theme (it is discussed in more detail on the "Your First OpenPublic Subtheme" page) screenshot. template. since Spartan includes some default styles for our custom functionality that make it faster to subtheme.com/admin/appearance and both enable and set to default the Ardi theme. .png are the logo image that gets placed in the header and footer of the theme openomega.Structure of the Spartan Base Theme We recommend that you use Spartan to sub-theme. so it sounds like an appropriate name for the first theme you will create in OpenPublic. Styles are inherited from one layer to the next. You will never be modifying any files in this base theme directly since you should always create a sub-theme instead but your sub-theme will most probably have similar structure. 'buttons'.png is a screenshot of a page in your theme to be displayed on the Appearance screen in the OpenPublic administration. global.css = global – Bottommost layer and if not overwritten.png and logo-sm. Spartan has the ability to determine the width of the browser and responds accordingly.php contains PHP code to preprocess the content before it gets placed into the templates.css = default spartan-alpha-default-fluid. preprocess folder allows you to easily store and organize your preprocess functions process folder allows you to easily store and organize your process functions templates contains tpl files for the various nodes and regions on your site logo. The following screenshot illustrates the structure of the files folders in the theme. and 'icons' sub-folders. It is further divided into: 'admin'. it is useful to explain the structure of the spartan folder. For more information about this see: http://drupal. 'banners'. Because of this recommendation. Click on the “Save Configuration” button to save your changes.yourdomain. Creating a Sub-theme from Omega We are going to create our first OpenPublic sub-theme called "Ardi".org/node/647754. it will have all of its styles inherited by all of the other CSS layers.css = normal img folder contains image elements used in the theme.

Structure of OpenPublic's Original Base Theme Now that we have mentioned.CSS styles specific for the WYSIWYG editor. Examples of such markup are: HTML head section.tpl.net/easyclearing. even when the design of a front page and inner pages are very different. please visit http://drupal.css .php and page-front. . openpublic_theme. page--front.header. minus frontpage. You will never be modifying any files in this base theme. grid settings.img-right.contains generic layout markup for all pages within a website. in passing. where some of the theme files are located.com/adamin/appearance/settings/Ardi.html] style: an HTML stylist's best friend. Drupal/[OpenPublic].tpl. .CSS styles for print mode. content types.IE7 sepecific styles openpublic_theme_ie8.inc and page.clearfix|http://www.org/node/1298698.php we extracted those into page.php that captures any content type not themed by a more specific theme file like node--blog-entry.tpl. zone and region configuration.inc.css .tpl.img-left.CSS styles for layout definitions. logo section.css . The documentation is still available for those who would like to sub-theme off of the openpublic_theme. In the case of OpenPublic base theme it is defined in a way that columns "collapse" if there is no content in them (content in columns is governed by setting in the Context http://openpublishapp. many useful CSS definitions for common Drupal markup classes etc. It's further sectioned into: 'admin'.php for the front page using page--front. js folder contains any theme-specific javascript files node folder contains tpl theme files for all content types (their detail pages) available in OpenPublic as well as a generic node.tpl.tpl.php page contains four page-level tpl theme files:** page. On the highest level.css .inc and include those from both page-level tpl files. Additional resources Drupal Theming 101 What is Responsive Design? Omega Project Page Omega Handbook Omega Framework Group Understanding the Omega theme Blog post on Omega Theming with OpenPublic's Original Base Theme OpenPublic originally shipped with the base theme openpublic_theme. and library settings. eliminating any duplication (and possibility for errors). following is the structure of the files and folders in the theme: css folder contains files for all cascading style sheets. you can change the debugging settings. To avoid duplication of these markup elements across page. sometimes: navigation.php . front pages have design very different from all the other pages in a website.Once you have enabled your theme.tpl. 'buttons'. editor.css .com/node/28 user interface). You should make this one fairly high-level and flexible since it affects all pages.header. they still share some part of markup at the top and the bottom.php .inc and page.php page. regions contains tpl files for markup that wraps around the content of a specific region .since in the majority of websites. so let's see how it is built. directly (since you should always sub-theme it instead) but your sub-theme will most probably have similar structure and you may often find yourself looking in openpublic_theme for reference. openpublic_theme_ie7. In any website. In OpenPublic CSS is organized across several files depending on the purpose:** basics. following is the structure of the folders in the theme: Accordingly. Included are: [.yourdomain. . it is useful to explain the structure of the openpublic_theme folder in general.-allow to override page. footer links etc. and everything else. you are now ready to configure it by going to http://www.footer.CSS styles for common basic use-cases. 'banners'. From here. the previous theme is still available for those that created a sub-theme from it.bold.italic.footer. and 'icons' sub-folders.tpl. For more information.css . Although the OpenOmega theme and Spartan theme are the new base themes for OpenPublic Beta 4. .IE8 specific styles print. img folder contains image elements used in the theme.positioniseverything.

For more information about this see: http://drupal.css in the sub-theme and add the following line to the ardi. Let's look at an example: Say you want to alter the HTML that renders your Blog Entry content type. if you are overriding a tpl. However. like suppressing or overriding or changing the path of a CSS file. When the sub-theme is the active theme OpenPublic will first look in the sub-theme folder and only if the file is not found there. When you want to modify the markup of your page.g. To fully leverage the base theme for bootstrapping new theme development.css Tip: in most cases.css or . for tpl. you need to override the appropriate tpl. If the path to the file is indicated in the . if you are overriding a CSS or javascript file. This is useful if you need to alter your content in a more advanced way. You can clear cache by visiting following URL: http://yourdomain. location of files in a theme does not matter.info file (like for . Overriding template files Template (tpl. Also add following line to the ardi.info declares basic information about the theme (it is discussed in more detail on the "Your First OpenPublish (Sub)Theme" page) screenshot.templates contains tpl files for the search results logo.js files). If the path does not need to be indicated in the . You can place files right under your theme folder or in any sub-folder. Creating a sub theme using OpenPublic's Original Base Theme . included in the OpenPublic distribution. Node-level tpl. Let's look at some examples: Suppressing openpublic_theme. Make the modifications in the newly copied file.info: stylesheets[all][] = css/openpublic_theme. OpenPublic will find these files anywhere under the theme folder. all you need to do is create a file with the same name in your sub-theme and add a css definition to the .png is a screenshot of a page in your theme to be displayed on the Appearance screen in the OpenPublic administration.png is the logo image that gets placed in the header and footer of the theme openpublic_theme. you can either enter new styles in it (overriding) or leave it empty (just suppressing).php) files are where the HTML markup lives that build your page. will be included.css: create an empty openpublic_theme.php contains PHP code to preprocess the content before it gets placed into the templates. even if they have the same name.php files cover only the HTML that is used to render the content of its node. custom themes should be created as a sub-theme of the theme called openpublic_theme. will it check the folder of the base theme. there's a good chance you may keep some.css Overriding layout. When you re-create a CSS file in your sub-theme.org/node/647754 * template. you may want to override others. Sub-themes automatically inherit everything from the base theme and then specific aspects can be overridden/further customized. you just need to indicate the correct path there.copy the file to sub-theme and modify it there. you need to find the appropriate tpl. Also.info file (e.tpl.php file from openpublic_theme/node into your theme folder.info file of the sub-theme.php files") you don't even need to do that.com is the root of your Drupal installation) or by going to Configuration > Performance in the admin menu at the top of the screen and clicking the "Clear all caches" button. for CSS files: under "CSS" folder) otherwise overriding won't work and both files. don't forget to clear the drupal cache.g.com/admin/config/development/performance (where yourdomain. Copy the node--blog-entry. While. from base and sub-theme. Some common examples: Suppressing and Overriding CSS Files Not all CSS files in the base theme are equally portable to the sub-themes. which means if you want to modify elements of your page that are not specific to the content type.info: stylesheets[all][] = css/openpublic_theme. we recommend placing it in the same folder structure that it has in the base theme. Customizing OpenPublic's Original Base Theme using a Subtheme The Approach In the previous chapter we touched upon the layout and structure of the base OpenPublic theme. Once you are done.php file to copy over to your theme. Attention: don't forget to clear cache after any significant theme-related operation.php file by copying the file into your theme folder. two for the sake of consistency. To disable a CSS file present in the base theme.css .php already present in the base theme. you need to place it in the exact same location as it was in the base theme (e.png and logo-sm.

IE 8 and below stylesheet stylesheets-conditional[lte IE 8][all][] = css/ardi_ie8. Drupal does not inherit region definitions form a parent (base) theme. you can add your own ones. IE 7 and below stylesheet stylesheets-conditional[lte IE 7][all][] = css/ardi_ie7. "stylesheets-conditional[lte IE 8]" is an example of declaring an IE specific CSS file. "base theme = openpublic_theme" tells Drupal that the base (parent) theme of the new theme is openpublic_theme. CSS styles for this theme stylesheets[all][] = css/editor.com/admin/build/themes] and both enable and set to default the Ardi theme: Click on the "Save Configuration button. Typically. so you always need to define set of regions you will be using. you should not have to. Documentation on IE conditions can be found here: [ http://msdn.info name = Ardi core = 7. in addition to the ones inherited from openpublic_theme.css .css is where we will define our custom styles).com/admin/appearance|http://yourdomain.We strongly recommended to always define the regions defined in openpublic_theme and. 3. Regions.css is for the WYSIWYG editor. Let's create a "css" folder under the ardi theme folder and ardi. The definition shown in this code is the exact same one as in openpublic_theme. CSS styles for this theme stylesheets[all][] = css/ardi.85%29. Let's create a file called "ardi. 4.html] ever uncovered by archeologists. go to: [http://yourdomain.css regions[sidebar_first] = First sidebar regions[sidebar_second] = Second sidebar regions[inner_first] = First Inner regions[inner_second] = Second Inner regions[content_prefix] = On Top of Content regions[content] = Content regions[content_suffix] = Underneath the Content regions[header] = Header regions[footer] = Footer regions[page_top] = Page top regions[page_bottom] = Page bottom regions[help] = Help There are several things worth noting in this configuration: 1. with the following code: . so that we have a place where we can place additional style definitions.php. For better or worse. This causes Drupal to "inherit' a whole bunch of settings from the theme. editor. if necessary.info" inside the themes/ardi and enter following code in it: ardi.css . in Drupal. you in most cases.tpl.85%29. ardi. giving us significant amount of groundwork out of the box. [OpenPublic|OpenPublic] allows you to declare conditional stylesheets in this way without needing to add any special code to page.org: under "all".microsoft. Let's try messing with the CSS. 2. to save your changes. Following that. In case you are wondering: Ardi is the name of the [first human ancestor |http://news.microsoft.com/news/2009/10/091001-oldest-human-skeleton-ardi-missing-link-chimps-ardipithecus-ramidus. in-house themes and modules are placed under "default" and themes and modules downloaded from drupal.nationalgeographic. are placeholders for space where blocks can later be placed and arranged.css file in it.x description = Ardi: Our First OP SubTheme base theme = openpublic_theme . You can declare any valid IE condition inside the brackets.com/en-us/library/ms537512%28v=vs. we define regions that we will use in the new theme.Theme Configuration We are going to create our first [OpenPublic|OpenPublic] sub-theme called "Ardi".com/en-us/library/ms537512%28v=vs. so it sounded like an appropriate name for the first theme you will create in [OpenPublic|OpenPublic].aspx |http://msdn. as well.css . However. But that's just a convenience rule. Let's get started by creating a folder called "ardi" under sites/default/themes or sites/all/themes.aspx] Customizing Theme Through CSS To activate the newly created theme. the second. Below that we define extra stylesheets (the first one.

LAMP Stack Windows XAMPP for Windows Mac XAMPP for Mac OS-X Linux XAMPP for Linux or you can install each component of the stack individually. familiar with linux and know how to set up LAMP stack on Linux. Most shared-hosting providers do not allocate enough resources to run a complex system like OpenPublic.#page-wrapper { background: blue. we recommend using a VPS (Virtual Private Server) or dedicated hosting. and OpenPublic. GNU Emacs Bluefish Graphics Editors Windows Adobe Photoshop Inkscape Paint Shop Pro Mac Adobe Photoshop Acorn Inkscape Linux GIMP Inkscape (S)FTP Clients Windows WinSCP .Tools of the Trade Following are the kinds of tools and resources you may need when you design a theme for Drupal. In the next sections of the documentation we will cover. opening great possibilities for altering the design just with CSS changes. eAccelerator or XCache). for large PHP code-bases like the one in Drupal/OpenPublic. As far as web-hosting goes. } Refresh the page and notice that the outer background is now bright blue (instead of the original dark blue with the flag texture). in general. non-CSS-based theme changes as well. The HTML markup of the [OpenPublic|OpenPublic] core theme is abundantly injected with all kinds of CSS classes in all kinds of places. If you are a developer. using a package manager like yum or apt-get. but you can use anything you want if it gets the job done. Resources . We also listed some of the software and websites that we have tried and liked. specifically. Please make sure to install a PHP op-cache (APC. HTML Editors Windows Eclipse with PDT and Target Management plugins. performance-wise. very affordable plans that can easily run OpenPublic. E-Texteditor HTMLKit Mac Textmate Coda Espresso Linux Eclipse with PDT and Target Management plugins. SliceHost and RackSpace Cloud have some wonderful. They makes a lot of difference.

The Drupal core and modules are usually pre-configured in a certain way to better serve some specific purpose. and spartan_theme. which could be costly. minimal requirements a theme must satisfy in order for it to be compatible with OpenPublic and be considered for contribution to the OpenPublic themes gallery.w3schools.g.tpl. over time. The list of base content-types at the time of this writing is as follows: ** Blog entry Document Home Page Feature Media Gallery Photo Press Release Profile Resource Services Site Page Webform Theme must provide consistent default styles for all common HTML elements (e.net/ JavaScript: http://www. Please look at the OpenPublic Compatibility Checklist for Themes section below for more information. The purpose of these base themes is to ease the development of themes compatible with OpenPublic. such as for news publishing purposes in the case of OpenPublic. etc) Theme must provide flexible and consistent default styling for node. any Drupal theme can be enabled in OpenPublic. openomega_theme.com/TRANSMIT/Cyberduck Language References HTML: http://www. The themes that properly sub-theme openpublic_theme. simply by updating these base themes.org along with a slew of contributed modules.com/css/ PHP: http://www. Theme must provide fully-styled implementation of base OpenPublic content-types. [OpenPublic|OpenPublish]'s original base theme was openpublic_theme and now also includes openomega_theme and spartan_theme. it is highly recommended to start any OpenPublic theme as a sub-theme of the openpublic_theme or spartan_theme. Those themes that don't sub-theme using one of the base themes will have to do independent maintenance and updates. <p>.com/php/ http://php.panic. Each content type style must support exposure of all variables that the latest version of the OpenPublic base themes do. style and display as well as main styles like: . While not technically necessary. until they are specifically styled). openomega_theme. we constantly update openpublic_theme.w3schools. <h2>. and spartan_theme will automatically get most bug-fixes and improvements. Theme must provide flexible and consistent default styling for all levels of views: row.php (to support new content types out of the box. OpenPublic Compatibility Checklist for Themes Following are the specific. Are all Drupal Themes OpenPublic Compatible? OpenPublic-compatible is any Drupal theme that can be used with OpenPublic and can support the full functional spectrum of the OpenPublic platform. <h1>.com/html/ CSS: http://www. Drupal themes not built for OpenPublic are typically not aware of these features and therefore either do not properly support them or ignore them altogether. <a>. but that does not mean that any Drupal theme is compatible with it.w3schools.com/flow/Transmit http://www.w3schools.com/ What Makes a Theme OpenPublic Compatible? OpenPublic is a Drupal Distribution Drupal Distributions or Installation Profiles are pre-packaged versions of Drupal that contain Drupal core. Technically.Far Manager Mac Flow http://extendmac. which you can download from drupal. When releasing versions of OpenPublic. OpenPublic adds a wide variety of features on top of those supported by vanilla Drupal. <li>. <h3>.com/js/ http://jquery.

or do you install Drupal core first? Anyone can use Open Public. government-agencies. state. please contact us at support@openpublicapp. You'll need to look at the content types. but also organizations that have similar communication goals and editorial schedules. We're finding a lot of interest from and hearing about sites underway from non-profits. or just in the US so far? We have not seen several finished international sites in OpenPublic and are currently working with members of the community to create an international theme. If a user adds new custom view. as well as a growing number of public sector organizations. and federal organizations. And if your question hasn't yet been answered. Whom Should We Contact? Where do I report issues and bugs in OpenPublic? Does a drupal distribution include Drupal core. and see if they work for what you're trying to accomplish. until they are specifically styled). philanthropic organizations. Apps will keep the core distribution light and flexible for users. Arabic. An example of such approach is Plain Old Semantic HTML (POSH: http://microformats." However. list and grid (to support new views out of the box.org/wiki/posh) FAQs This is the home of the Questions about OpenPublic. but also organizations that have similar communication goals and editorial schedules. Themes must use semantically meaningful markup and css class names. or is it specifically for the Pubic Sector? Is OpenPublic Suitable for X Type of Site? Could OpenPublic be used for an Intranet? Do you know if OpenPublic has been used internationally yet. Please refer here for frequently asked questions about OpenPublic. with arbitrary set of fields. General FAQs This page contains general frequently asked questions about OpenPublic. governments.unformatted. Arabic. or is it specifically for the Pubic Sector? Anyone can use Open Public. local. Since every public sector organization is different. as well.com. or do you install Drupal core first? Can anyone use OpenPublic. Apps will keep the core distribution light and flexible for users.? Given That OpenPublic is Based on Drupal 7 (which has only been out since January 2011). Anyone can use OpenPublic. etc. governments. and we think that's going to help build a diverse community. and RTL Language Support? . public-sector contributors. Does OpenPublic Have French. It just depends on what you need your intranet to do. Large Site. Anyone can use OpenPublic. is OpenPublic Stable Enough to Use? Is OpenPublic itself Stable? Is OpenPublic Still a Beta? Is there a Video Tutorial for OpenPublic? What Does OpenPublic Cost? Are there Different Plans? Is Hosting Available for OpenPublic? What's the Main Difference Between OpenPublic and OpenPublish? Are There Downsides to OpenPublic? If We Want Help With OpenPublic. Do you know if OpenPublic has been used internationally yet. government-agencies. we can't say unequivocally "it is suitable for X but not Y. are currently using OpenPublic. and we think that's going to help build a diverse community. and RTL Language Support? Is OpenPublic Compatible with 508 Guidelines? How Long do OpenPublic Engagements Take? How Long Does it Take for a Small Site. We're finding a lot of interest from and hearing about sites underway from non-profits. public-sector contributors. Does a drupal distribution include Drupal core. Could OpenPublic be used for an Intranet? It's absolutely an option. its block view must look reasonably well in any general region and its page view must look reasonably well. Can anyone use OpenPublic. Is OpenPublic Suitable for X Type of Site? It just depends on the needs of your site. philanthropic organizations. or just in the US so far? Does OpenPublic Have French.

We are working on an update of OpenPublic now. Where do I report issues and bugs in OpenPublic? Please report all issues and bugs in the OpenPublic issue queue on drupal. We are currently putting out new releases every few months. and Apps are geared more toward public sector organizations and those seeking open government solutions. How Long do OpenPublic Engagements Take? How Long Does it Take for a Small Site. support. You may also want to familiarize yourself with the 508 guidelines to ensure that your content is meeting these guidelines. it's true that many of the modules in the community are not fully ported over to Drupal 7. so if you use a custom theme you should do the work to ensure that it's accessible for your users. is OpenPublic Stable Enough to Use? Is OpenPublic itself Stable? Drupal 7 itself is stable. the customizations needed. Is OpenPublic Compatible with 508 Guidelines? OpenPublic is 508 ready. They provide hosting.com and fill in the contact form. Thank you! OpenPublic and Drupal This FAQ section lists questions related to OpenPublic setup and maintenance. We're working with the maintainers of those modules as quickly as we can to bring everyone up to Drupal 7. That said. and the modules that are included in OpenPublish are geared toward newspapers. we've had teams new to Drupal go live in three months and experienced teams go live in two weeks.Because OpenPublic is being adopted internationally. etc. If We Want Help With OpenPublic. We provide full services from architecture to design to building. translation is a big need. With regards to OpenPublic. Whom Should We Contact? Please go to openpublicapp. generally a Beta version of anything is going to be to some extent less "stable" than a full version. and remote administration. it depends on the CSS and XHTML. Is OpenPublic Still a Beta? Yes. What's the Main Difference Between OpenPublic and OpenPublish? The layout.? People are finding that OpenPublic is faster than Drupal out of the box.com. magazines. It may not be for everyone. and online news whereas with OpenPublic.com and fill in the form. but we do think it's a great solution for a lot of people. As with any website. please contact us via openpublicapp. you'll see more and more stability. We'll get back to you right away to discuss what you need. and the default themes are built to that standard. If you're interested.org. If you are interested in providing a translation or translation support in OpenPublic. and we are currently working on providing more video tutorials in the next few months. please visit openpublicapp. the content types. Are There Downsides to OpenPublic? OpenPublic is definitely not the answer for every public sector organization or need. Given That OpenPublic is Based on Drupal 7 (which has only been out since January 2011). we recommend Acquia. and we believe that the OpenPublic release was stable within itself. OpenPublic is still a beta. What Does OpenPublic Cost? Are there Different Plans? OpenPublic itself is free and open source for everyone to use and contribute to. Phase2 also does custom development for it. content types. and the team's experience. and as we go forward. features. We'll get back to you right away to discuss what you need. As some examples of the range. but the time it takes varies based on the size of the site. features. Large Site. Is OpenPublic a Branch of Drupal? Will Updates to Drupal be Incorporated into OpenPublic? . Is there a Video Tutorial for OpenPublic? Yes! There is a video tour in the distribution now. Is Hosting Available for OpenPublic? If you're looking for hosting. which ranges greatly depending on your needs.

However. including UberCart or Drupal Commerce. which means at its core. Can You Install Ubercart 3 or Drupal Commerce with OpenPublic? Does OpenPublic Come Installed with Any Default Workflows or Workflow Modules? Does OpenPublic Handle Online Payments? Does OpenPublic have any integration capabilities or an application for CiviCRM? How Does OpenPublic Handle Events? Is There a Dashboard for Different Types of Maintainers? Can You Install Ubercart 3 or Drupal Commerce with OpenPublic? Any Drupal 7 module can be used with OpenPublic. Does OpenPublic Handle Online Payments? OpenPublic is not currently set up for online payments. so you should be able to use other modules exactly as you wish.Can Modules Be Added to OpenPublic in the Same Way as on a Standard Drupal Setup? Are There Limitations Using Other Modules? Is It Possible to Use Some of OpenPublic's Modules in Other Drupal Sites Such as Mapping or Ideation? How Do You Update OpenPublic When a New Version is Released? Do you Update Drupal Modules Individually? Will there be any issues if I upgrade the modules built into OpenPublic? Does OpenPublic use Panels or Contexts? Is OpenPublic a Branch of Drupal? Will Updates to Drupal be Incorporated into OpenPublic? Yes. these will include all needed module updates for modules included in the distribution. the Ideation module is a contributed module. which will update the Drupal modules as well as any updates we've made specifically to the distribution. This is a great example of how apps can potentially solve problems and provide integrations with popular third party tools. . but we're hoping to see contributed apps to facilitate secure online payments. OpenPublic is Drupal 7. Phase2 contributes modules back to Drupal. Does OpenPublic Come Installed with Any Default Workflows or Workflow Modules? We are currently working on a Workflow app that you can configure for your needs. Does OpenPublic have any integration capabilities or an application for CiviCRM? We have our eye on integrating a CRM into OpenPublic because a lot of people want to use it. How Do You Update OpenPublic When a New Version is Released? Do you Update Drupal Modules Individually? There will be an upgrade path from one version to the next. Are There Limitations Using Other Modules? It's Drupal. but the majority of the layout in OpenPublic uses context. we will include upgrades to all included modules and to Drupal Core. Modules can be added and updated in the same way they would for any Drupal site. you will have to configure things and make sure the dependencies are all in place yourself. OpenPublic is a distribution of Drupal.org when they are ready and it makes sense. For instance. Is It Possible to Use Some of OpenPublic's Modules in Other Drupal Sites Such as Mapping or Ideation? Yes. Specific Integrations and Features This section of the FAQs answers questions related to the specific integrations and features in OpenPublic. when OpenPublic provides new releases. without burdening the distribution itself. When we update versions of OpenPublic. Can Modules Be Added to OpenPublic in the Same Way as on a Standard Drupal Setup? Yes. Does OpenPublic use Panels or Contexts? OpenPublic uses both Panels and Context. Will there be any issues if I upgrade the modules built into OpenPublic? There should not be any issues with upgrading modules in OpenPublic. However. it is Drupal.

in many ways it will. please get in touch with us via openpublicapp. Our goal is full transparency. design. We're hoping to work with them to get it contributed back as an app. There has been a great custom module built by the Case Foundation's Start Up America site. Will the OpenPublic App Store function like a smart phone app store? Yes. Are Apps just "Features"? Will Apps be available in other distributions? Will the OpenPublic App Store function like a smart phone app store? What Apps are Available For OpenPublic? What Plans are there for Future Apps? Are Apps just "Features"? Apps are generally based on the Drupal module Features.org. In the coming months. upon installation. An app is a module or theme that delivers a piece of functionality fully and clearly. and use the functionality. Questions about Apps This FAQ section answers questions on how apps fit into the OpenPublic distribution. But. By creating a specific protocol for installing and configuring apps. What Apps are Available For OpenPublic? What Plans are there for Future Apps? The apps that are currently in OpenPublic are Project Mapper. so anyone can create apps. the dashboards are not for different types of users. If you're interested in building an App for OpenPublic. Anyone using the Apps Module and AppsServer will be able to create "app stores" within another Drupal site or distribution. and Demo Content. and we will have a process in place to submit apps. Apps is a contributed module. . and full ability for people in the community to contribute. workflow. But an app has a bit more information included with it – configuration. create apps stores. Is There a Dashboard for Different Types of Maintainers? The Dashboard in Drupal 7 allows any user to find the common functionality for OpenPublic. making Drupal functionality more “pluggable” and inherently easier to use. you can expect to see more around translation. and often demo content. The goal of the “Apps” module is to reduce the number of steps required of users from installation to usability for functionality for their Drupal sites. Will Apps be available in other distributions? Yes. However. If you have assigned certain users different permissions. Apps are currently available in both OpenPublic and OpenPublish.How Does OpenPublic Handle Events? OpenPublic does not contain any events by itself. we’ve streamlined the end-user experience. OpenPublic Release Notes OpenPublic Release Notes OpenPublic Beta 2 Release Notes OpenPublic Beta 3 Release Notes OpenPublic Beta 4 Release Notes OpenPublic Beta 2 Release Notes OpenPublic Beta 2 Release Notes OpenPublic Beta 2 was focused on updating core and the modules including in OpenPublic.com. Events. as it's all open source. they'll only be able to access those functions. and security. and fully releasing OpenPublic on Drupal. Ideation. we will maintain a specific OpenPublic app store (and probably App stores for our other distributions).

g.php to update the database If you have overridden content types. Download download OpenPublic Beta 3 2. and copy the the profiles directory over your current profiles directory (replace it) 3. Run update. OpenPublic Beta 4 Release Notes OpenPublic Beta 4 OpenPublic Beta 4 was focused on providing a responsive theme for OpenPublic. there were some feature updates to the context_field module: Context fields can now toggled the context node edit screen.Org Download now includes an install.. Unpack it. Drupal should prompt you to review them. and OpenPublic can be installed with make Updated OpenPublic to the latest in Core and updated all Modules Fixed Issues Resolved an issue where adding a custom logo to the OpenPublic theme resulted in users seeing a white screen Resolved an issue where OpenPublic would [not always generate compliant passwords when used with Aegir|http://drupal. so [items couldn't be permanently removed from the menu|http://drupal. but of course you should backup and do a test to ensure you don't run into any problems: 1. to apply a custom layout to a page on the fly) Upgrade Recommendations We recommend the following procedure.Improvements Checked in all OpenPublic code to Drupal.org/node/1092220] Resolved an issue where the main menu would reset to the default.org/node/1133602] Resolved issues with error messages when enabling translations on content Resolved an issue with users becoming locked out after failed login attempts and being unable to reset their password Fixed a minor presentation issue that could occur when disabling the demo content Other minor issues and performance improvements OpenPublic Beta 3 Release Notes OpenPublic Beta 3 is a release focused on updating modules in OpenPublic to keep current with ongoing progress in Drupal and to fix issues that App developers have reported to the Apps module: Updated the Apps Module to provide better testing of apps in a local environment Fixed the Apps Module's handling of Apps that have no dependencies In addition. New Features Created new Omega base theme (previous theme is still available for those that created a sub-theme from it) Created new Omega-based "Spartan" theme designed as a responsive base theme for OpenPublic Improvements Updated OpenPublic to the latest in Core and updated all Modules Fixed Issues Resolved an issue where users can see an error message that the [node:type] token is not valid when setting up URL alias patterns Other minor issues and performance improvements . This is useful to declare that a node (such as a Site Page) has it's own unique context (e.

You're Reading a Free Preview

Download
scribd
/*********** DO NOT ALTER ANYTHING BELOW THIS LINE ! ************/ var s_code=s.t();if(s_code)document.write(s_code)//-->