This plugin handles citizen-oriented ideation on the web.
It provides :
The OpenPB demo site uses this plugin, so you can see it in action !
Please keep in mind that this plugin is in alpha version and is under development ; some features could not work properly.
Above all, please refer to the 'configuration' section of the document to create data for you ideation campaign.
Before accessing the SOLR search page, you must index the pre-created proposals : go to the Solr Indexing back-office page, and click on 'Start indexing' button.
Search page
Now you can access to the search page :
http://test.paris.mdp:8080/pb/jsp/site/Portal.jsp?page=solrProposalSearch&conf=proposals_list
Submit form
To submit a new proposal, you have to verify that dates of 'ideation' phase are right.
Then access to the following page :
http://test.paris.mdp:8080/pb/jsp/site/Portal.jsp?page=ideation&init=true&campaign=<campaign_code>
where <campaign_code> is the code of the campaign (for example : A).
Authentication MyLutece
Submitting a proposal is subject to authentication via MyLutece.
To use the plugin into your Lutece site, first add the following code to your pom.xml
<dependency> <groupId>fr.paris.lutece.plugins</groupId> <artifactId>plugin-participatoryideation</artifactId> <version>[1.0.0-SNAPSHOT,)</version> <type>lutece-plugin</type> </dependency>
Then override the participatory-ideation properties file to configure ideation campaigns :
# Code and label of campaign 'A' --------------------------------------------------- participatoryideation.campaign.1=A;First ideation campaign # Code, label and color of campaign themes participatoryideation.campaign.A.theme.1=GENERAL;General;#C00000 participatoryideation.campaign.A.theme.2=NUM;Digital city;#BA05E6 participatoryideation.campaign.A.theme.3=... # Code, label and type of area (type : 'whole' for whole city, or 'localized' for district ; only one whole area possible) participatoryideation.campaign.A.area.1=whole;Paris city;whole participatoryideation.campaign.A.area.2=area_1;First district;localized participatoryideation.campaign.A.area.3=area_2;Second district;localized # Begin and end of the ideation phase participatoryideation.campaign.A.ideation=2020-04-05T12:00:00;2020-04-21T11:00:00 # Optional fields : 4 fields are currently handled, the third can have a complement question participatoryideation.campaign.A.field1.active=0 participatoryideation.campaign.A.field1.label=Field 1 participatoryideation.campaign.A.field1.description=Description of field 1 participatoryideation.campaign.A.field1.mandatory=0 participatoryideation.campaign.A.field2.active=1 ... # Code and label of campaign 'B' --------------------------------------------------- participatoryideation.campaign.1=B;Second ideation campaign # Code, label and color of campaign themes participatoryideation.campaign.B.theme.1=GENERAL;General;#C00000 participatoryideation.campaign.B.theme.2=SPORT;Sport;#BA05E6 # Code, label and type of area (type : 'whole' for whole city, or 'localized' for district ; only one whole area possible) participatoryideation.campaign.B.area.1=whole;Whole city;whole # Begin and end of the ideation phase participatoryideation.campaign.B.ideation=2020-03-20T12:00:00;2020-04-20T11:00:00 # Optional fields : 4 fields are currently handled, the third can have a complement question participatoryideation.campaign.B.field1.active=0 participatoryideation.campaign.B.field1.label=Field 1 participatoryideation.campaign.B.field1.description=Description of field 1 participatoryideation.campaign.B.field1.mandatory=0 participatoryideation.campaign.B.field2.active=0 ...
Java classes
Campaign data (campaign codes, phase dates, submitter types, themes...) are provided by Java class IdeationCampaignDataProvider, which implements the interface IIdeationCampaignDataProvider.
By default, this class use DB data for submitter informations, and properties files for campaigns, areas, themes, optional fields. It can be overrided to provide data from another source. You can view an example in module-participatoryideation-participatorybudget. The new data provider class has to be declared by overriding Spring context file participatoryideation_context.xml.
SQL file
SQL init file of plugin creates sample data :
To use this SQL file, please refer to the Lutece Maven process.
Issue Tracking : this is a link to the issue management system for this project. Issues (bugs, features, change requests) can be created and queried using this link.