Package: vdz.plone.projectreview
vdz.plone.projectreviewThisPloneadd-on has been developed byvisaplan GmbH, Bochum, Germany
forVDZ Technology gGmbH, Düsseldorf, Germany, to evaluate projects.ExamplesThis add-on is currently under development and not yet used on public internet
sites.DocumentationSorry, we don’t have real user documentation yet.InstallationThese instructions assume you have shell access to the server which will run
the your Plone instance and moderate shell using skills.Install PloneThe vdz.plone.projectreview package is an add-on for the open-source content
management systemPlone, which in turn is based on the web application serverZope.Currently, vdz.plone.projectreview still needs Plone 4.3;
seeIssue 1, “Plone 5 support”.If you don’t have a suitable Plone installation yet,
you can use theUnified Installer.
Install a recent 4.3 version.At the time of this writing, the latest release
provided via UnifiedInstaller is 4.3.19,
but 4.3.20 issoft releasedand ready for production use.We need to apply a few little changes to your buildout script, typically namedbuildout.cfg; thus, don’t runbuildoutimmediately
(unless you want to do it twice).Please note:A vanilla Plone 4.3.19 most likelywon’t workbecause of the brokenmain_template.ptit contains.  So, if you get an ugly little error text
about a compilation error when trying to access the web interface(or just to have the most recent version),
please update to Plone 4.3.20 (which is expected to be the last 4.3 release),
by replacing e.g.:[buildout]
...
extends =
    ...
    versions.cfgby:[buildout]
...
extends =
    ...
    https://dist.plone.org/release/4.3.20/versions.cfgIf you already have a running Plone 4.3.19, you probably use an alternativemain_template.ptalready (as we’ll do as well, usingplonetheme.bootstrap),
and may continue to do so.You are encouraged to update, of course, but there is not technical requirement
to do so for vdz.plone.projectreview.Use an existing Plone 4 installationIf you have an existing Plone 4 installation, you might be able to use it.
There are a few things to consider:Since we useplonetheme.bootstrap, the globalmain_templateis overridden.
If you rely on anothermain_template, this probably won’t work.We use Bootstrap 3 styles.We usejQuery1.11 (or higher).  If you have incompatible custom Javascript
which needs an older version (e.g. using the old.liveand.dieAPI
which was removed in jQuery 1.9+), you’ll need to install a compatibility
layer orupdate your scripts.The rule is:If you are fine with the product activations needed for
vdz.plone.projectreviewandwith the package versions, you can use your
existing Plone instance.If our product activations don’t match your needs,
but the package versions do
(e.g. you can live withplone.app.jquerybeing v1.11.2
and a 4.3.*Products.CMFPloneversion),
you should be able to use your existingZopeinstallation
and create a new Plone site in it, with an id of your choice.Please testthe coexistence of your current site with vdz.plone.projectreview
in a dedicated test environment!Add vdz.plone.projectreviewFirst, the vdz.plone.projectreview package must be added to theeggsvalue;
the Unified Installer puts this in the[buildout]section:[buildout]

...

eggs =
    Plone
    vdz.plone.projectreviewSince we use a relational database, you’ll need a database driver as well.
Our package pulls inSQLAlchemy(viazope.sqlalchemy) itself,
but you’ll need a specific driver for your database.
For PostgreSQL, this might bepsycopg2:eggs =
    ...
    vdz.plone.projectreview
    psycopg2Version pinningsSince we use Bootstrap 3, we need jQuery 1.11+.
Plone 4.3 by default still uses jQuery 1.7, for historical reasons.Yourbuildout.cfgscriptextendsother scripts, containing version
pinnings. Find or create the[versions]section inbuildout.cfgand
override the 1.7.* value:[versions]
...
plone.app.jquery_ = 1.11.2Product configurationThere are two configuration settings which are done in the buildout:thedata source name, specifying the relational database;a directory path for file attachments.For these, we’ll create additional text for thezope.conffile(s) of your Zope instance part(s).You might want to put these settings in a dedicatedsettings.cfgfile and
add this to theextendslist.
The Unified Installer uses the[buildout]section:[buildout]
zope-conf-additional =
    <product-config projectreview>
    data-dir ${buildout:directory}/var/myattachmentsdir
    </product-config>
    <product-config reldb>
    dsn      postgresql+psycopg2://localhost/mydb
    </product-config>In this case, you’ll need to make sure this value is used for your instance
parts, e.g. inbase.cfg:[instance_base]
...
zope-conf-additional = ${buildout:zope-conf-additional}Build and startWith everything in place, runbin/buildout.If you didn’t specify an own administration password, be sure you have it in
the buildout, or to write it down;
you’ll need it to login to your fresh Zope instance and create the “real”
users.Start up the instance (depending on the type of your installation), e.g.:bin/instance fgDatabase initialization(TODO; script needed)Product installationsIn theprefs_install_products_formview of your instance, we’ll activate the
following extensions (if not already done):vdz.plone.projectreviewBootstrap ThemejQuery DataTablesjQuery UIWe’ll deactivate:Classic Plone designUpdate to Plone 5Finally, a few remarks considering Plone 5.Most of the parts are Plone-5- and Python-3-ready already,
so there might be an update soon.However, allprojects datais held in a relational database anyway, so
it should be possible to use this in a fresh installation without any necessary
data migration, just using the samedata source name.The only thing which would need to be migrated (in the standard case) is the
user and groups information; this is beyond the scope of this documentation.
In most cases, this involves so few user accounts and groups
that it can be done by hand easily.DependenciesProducts.CMFPlone:This is “the Plone” we use.Currently we require a 4.3 version.Version 4.3.19 isbrokenregarding the containedmain_template.ptskin layer template;
thus, a vanilla Plone 4.3.19 (e.g. for fresh installations)
most likely won’t work.
Since this template is frequently overridden, this is not a hard
requirement;
in case of problems, please follow the instructions above
to upgrade to release 4.3.20.Python 2.7:Because Plone 4.3 requires Python 2.7, so do we (for the moment).
Our Python code should support Python 3 already, using thesixlibrary.Used softwareGeneral purposePloneZopePythonSQLAlchemy, viazope.sqlalchemyBootstrap3.3.7, viacollective.js.bootstrapandplonetheme.bootstrapjQuery1.11.2+, viaplone.app.jqueryMore specific, or developed for this projectvisaplan.zope.reldb, to configure thedata source nameand provide some
SQL generating functionsvisaplan.zope.inputmacros(TAL templates for generation of form and output fields)visaplan.plone.infohubs(a mini language to access sevaral Plone features)visaplan.plone.toolsvisaplan.tools(non-Plone-specific Python utilites)Included SoftwareThis package includes the following Javascript libraries
we didn’t find a ready Plone integration to use:Chosen1.8.7jQuery KeypadContributeIssue Tracker:https://github.com/visaplan/vdz.plone.projectreview/issuesSource Code:https://github.com/visaplan/vdz.plone.projectreviewSupportIf you are having issues, please let us know;
please use theissue trackermentioned above.LicenseThe project is licensed under the GPLv2.The following components are licensed under the MIT license:ChosenjQuery KeypadContributorsTobias Herp,tobias.herp@visaplan.comChangelog1.0.0 (unreleased)Initial release.
[tobiasherp]