Blog

About life and work after the digital revolution

Last Preparations for PloneConf

erstellt von pgerken — zuletzt geändert: 2012-10-02T12:52:07+01:00
Philip and I are doing our last steps for the plone training. Also, we ask each other what else we could forget, did you miss any of these?

We are in the last steps for our two-day Training "Mastering Plone". As far as I can tell we'd still welcome more people. We just sent our a mail to the participants about how to prepare a virtual machine with vagrant for the conference. It installs Plone's unified installer in a ubuntu 12.4-box with puppet using the systems python 2.7. Hopefully everyone should have the same Plone running on their laptops even before the training starts on Monday morning.

Apart from that, don't forget:

  1. Internet in Hotels can be slow. It might be better to get a local card than to disable roaming on your phone. Here is a list of dutch sim card providers with data plans: http://prepaidwithdata.wikia.com/wiki/The_Netherlands
  2. Don't trust WiFi! From what I have heard, it has happened in the past that Wifi routers have been stolen during the conference, hacked for data sniffing and reinserted into the conference LAN, probably with key loggers. I am pretty sure you access your customers plone sites via https only (wink, wink!), but what about your phone apps, you know they won't transmit your password in clear text? Don't take any risks, use a VPN! http://vpnreviews.com/
    I have had bad experiences with HideMyAss btw, as soon as I was in brazil, they thought my VPN account was used for fraud and asked for some details I didn't have with me, to not cancel my account. Apparently they want you to use HMA from home only.
  3. Sleep as much as you can before you go. You won't get any sleep during the conference.

See you in Arnhem!

Security Patch Party auf der PyCon DE

erstellt von pgerken — zuletzt geändert: 2011-09-29T21:18:25+01:00
Während unserer Plone Schulung auf der PyCon DE wird ein Security Patch für Plone veröffentlicht. Wir machen eine Patch Party draus.

Pünktlich zu der deutschen Python Konferenz in Leipzig wird einer der seltenen Security Patches für Plone veröffentlicht.

Dieses wurde im Vorfeld angekündigt, damit sich alle Anwender von Plone vorbereiten können, um den Patch zeitnah zur Veröffentlichung einzuspielen. Wer ganz auf Nummer sicher gehen möchte, fährt seine Dienste kurz vor der Veröffentlichung runter, installiert sofort nach Veröffentlichung den Patch und fährt danach Plone wieder hoch. Dank der guten Vorbereitung durch das Plone Security Team sind diese Schritte bei den letzten Patches immer reibungslos verlaufen.

Dieses mal findet die Veröffentlichung lustigerweise gegen Ende unseres Plone-Tutorials auf der PyCon DE statt. Wir haben uns daher kurzfristig dazu entschlossen, im Anschluss an unser Tutorial eine Patch Party zu machen. Jeder der auch Plone Seiten patchen muss ist herzlich eingeladen am Dienstag den 4.10. ab etwa 16:45 zu unserer Plone Schulung zu kommen. Dieses Angebot gilt sowohl für alte Hasen die genau wissen was sie tun als auch für Neulinge die sich unsicher sind, ob sie den Patch ohne Probleme einspielen können. Die alte Hasen können den neuen Hasen dann helfen ihre Seiten zu patchen.

Falls notwendig erklären wir bis 17:00, wie man den Patch vorbereiten muss und geben Tipps um zu prüfen, ob man beim Patchen mit Problemen rechnen muss. Zudem verraten wir wie wir all die Seiten, die wir auf den verschiedensten Servern betreuen, weitgehend automatisiert patchen.

Happy Patching!

World Plone Day 2011

erstellt von Philip Bauer zuletzt geändert: 2011-07-14T16:13:12+01:00
Am Mittwoch, den 27. April ist es wieder soweit: Der inzwischen vierte World Plone Day steht an und wird in München wie gehabt in der Seidlvilla stattfinden. Vormittags gibt es Einführungsvorträge und nachmittags auch solche, die selbst gestandenen Plone-Kennern und Plone-Könnern etwas spannendes bieten.

Der fast schon traditionelle 'Pimp my Plone'-Vortrag wird diesmal ausfallen, weil ich mit Vorträgen über Deliverance, Through-the-web-development und die Zukunft von Plone mehr als ausgelastet bin. Doch gerade in letzterem zeige ich ein paar Funktionen künftiger Plone-Versionen, die getrost unter diese Kategorie fallen könnten. Also doch:

Pimp my Plone

Das beste wird trotzdem wie immer der Ausklang bei hoffentlich schönem Wetter im Biergarten sein.

Wer sich für Content Management-Systeme interessiert oder einfach nur wissen will ob Plone vielleicht eine gute Lösung für eine geplante Webseite ist sollte einen Blick riskieren. Die Münchner Plone-Usergruppe ist sich nicht zu schade alle Fragen zu beantworten.

Programm

Anmeldung

Plonator-sprint - report on day one

erstellt von Philip Bauer zuletzt geändert: 2011-04-04T08:28:58+01:00
Yesterday the Plonator-Sprint kicked off. We got some way to establish a common website for the german, austrian and swiss plone-communities.

The plonator-sprint takes place at the department of informatics at the University of Munich and aims at improving the visibility of the plone-community.

The munich plone-user-group managed to get plone.de online since January 2011 after a year of back and forth about the domain. We plan to run plone.at and plone.ch on the same site. To enable the austrian and swiss communities to excert some control over the page yesterday I wrote a view that forwards visitors to country-specific landing-pages. Visitors of plone.de will end up at www.plone.de/de and visitors of www.plone.at at www.plone.at/at - de and at being folders with a collection as default_page and custom teaser-images.

At the moment we are knee-deep in a discussion about plone, open-source and marketing. This afternoon we'll visit the munich strong-beer festival…

Securing Plone-Sites with https and nginx

erstellt von Philip Bauer zuletzt geändert: 2015-10-04T15:26:28+01:00
At the plonator-sprint I finished a nginx-config to secure all authenticated traffic via https.

Some noteable things:

  • There is more than one login-form. In fact I counted at least six different login-forms. Ever heard of 'failsafe_login_form'? Searching for /login_form will not be enough.
  • The page you get after logging out has it's own login-form. Since I use this page to switch back to http I chose to remove the form by customizing the template 'logged_out.pt'.
  • Since I redirect to https when Plone' s Authentication-cookie '__ac' is present calling '/logged_out' while still logged-in would result in an infinite recursion. That's why I break before the rule is called when '__ac' is still set.
  • Don't use the login-portlet since I don't see how it can be delivered via https if you want to deliver the site with normal http.
  • Never ever expose your zope-root or login using the zope-admin-Account via http since the zope-admins password is only uuencoded in a cookie!

Here is my config:

upstream myzope {
server localhost:8080;
}

ssl_certificate      /home/starzel/nginx/starzel.crt;
ssl_certificate_key  /home/starzel/nginx/starzel.key;

# http
server {
listen myserver.com:80;
server_name www.mysite.com;
access_log /var/log/nginx/mysite.com_access.log;
rewrite ^(.*)(/login_|/require_login|/failsafe_login_form)(.*) https://$server_name$1$2$3 redirect;
if ($http_cookie ~* "__ac=([^;]+)(?:;|$)" ) {
rewrite ^(.*) https://$host/$1 redirect;
}

location / {
proxy_pass http://myzope/VirtualHostBase/http/www.mysite.com:80/Plone/VirtualHostRoot/;
}
}

# https
server {
listen myserver.com:443 default ssl;
server_name www.mysite.com;
access_log /var/log/nginx/mysite.com_access.log;
if ($http_cookie ~* "__ac=([^;]+)(?:;|$)" ) {
# prevent infinite recursions between http and https
break;
}
rewrite ^(.*)(/logged_out)(.*) http://$server_name$1$2$3 redirect;
location / {
proxy_pass http://myzope/VirtualHostBase/https/www.mysite.com:443/Plone/VirtualHostRoot/;
}
}

# zmi
server {
listen myserver:443 ssl;
server_name manage.mysite.com;
access_log /var/log/nginx/heeschmusik_zmi.de_access.log;
location / {
proxy_pass http://myzope/VirtualHostBase/https/manage.myserver.com:443/VirtualHostRoot/;
}
}

The cookie-regex explained (thanks to Hanno Schulz and Vlad Vorobiev for their wisdom): $http_cookie (which is a string) is searched for anything containing '__ac=' followed by 1 or more characters which is not ';' (which would mean the cookie has no value), followed by either an ';' (signaling the beginning of another cookie) or the end of the line. If you are as ignorant of regex as me you might consider keeping this regex-cheatsheet close.

By the way, this site neither uses nginx nor is it not secured. But this one is: www.heeschmusik.de. I plan to move most sites to nginx in the near future.

Feeback appreciated.

Office-Warming Party

erstellt von Philip Bauer zuletzt geändert: 2015-10-04T14:44:48+01:00
Friday we had a party celebrating the new office of Starzel.de

Plone 4 - Vorstellung in München

erstellt von Philip Bauer zuletzt geändert: 2011-02-18T15:52:23+01:00
Das nächste Treffen der Münchener Regionalgruppe der Deutschsprachigen Zope User Group (DZUG) ist der Vorstellung von Plone 4 gewidmet. Plone-Interessenten und Neueinsteiger sind herzlich eingeladen.

Am 1. September 2010 konnte die Plone-Community stolz die Veröffentlichung von Plone 4 bekanntgeben. Plone 4 ist die jüngste Version des »State-of-the-Art« Open-Source-CMS. Es ist schneller, leistungsfähiger und attraktiver als je zuvor.

Bei dem nächsten Treffen der Plone-Usergruppe München am 12.10. werden daher die wichtigesten Neuerungen an Plone 4 vorgestellt und gezeigt, wie einfach es ist eine Webseite mit Plone 4 zu erstellen, anzupassen und zu pflegen. Dazu sind alle herzlich eingeladen, die sich über Plone 4 informieren wollen. Anschliessend bleibt genug Zeit für Fragen und eine gesellige Pizza.

Dienstag, den 12.10.2010 um 18:30
LMU, Institut fuer Informatik, Oettingenstr. 67, Raum Z 1.09 - das ist in der Mitte des Gebäudes (Zentralbereich), 1.OG.

Der Eintritt ist natürlich frei.

Mein Lieblingsfeature in Plone 4 ist übrigens diese neue Option in Navigationsmenü:

Hide hidden stuff

Wenn das deaktiviert wird, kann man Verstecktes wirklich verstecken. Warum Verstecktes nicht wirklich versteckt wurde war mir nie wirklich klar :-) Klingt wie verneinte Verneinungen, ist aber durchaus praktisch. Starzel.de läuft übrigens seit April 2010 schon mit Plone 4 und neuem Design.

Weitere Infos zu Plone 4 finden sich hier:

World Plone Day 2010 in Munich. Register now!

erstellt von Philip Bauer zuletzt geändert: 2014-06-30T13:03:36+01:00
Tuesday night at the usergroup-meeting we finalized the program for World Plone Day 2010 in Munich. I'm pretty exited about what I think will be the best World Plone Day ever.

This year the we mainly focus on how Plone enables communes and other public institutions to create complex portals and intranets. Therefore we have a very loooong session on the inclusion of various aspects of various stuff. LDAP, SQL-databases, design, internal applications like room-planners and content are normally already in-place when Plone comes along. So we try to show how to make all these things work together nicely without throwing them away or reinventing the wheel.

I also get a chance to give a updated version of my all-time-favorite presentation about some amazing add-ons for Plone that exists through the hard work of others. I was thinking about calling it "Plone — straight or on-the-rocks?" but stuck with "Pimp-my-Plone".

We have some non-technical talks about Plone in the morning and some more in-depth talks in the afternoon. Plus case-studies and enough time for discussions. And: we go to a pub afterwards :-)

Check out the full programm and register now at http://muenchen.worldploneday.de/anmeldung

svn: '...' has no ancestry information

erstellt von bleicher — zuletzt geändert: 2011-02-18T15:52:24+01:00
subversion (1.6.5) and - depending on it - mr. developer complained about some strange missing ancestry information.

I tried to commit code from this directory tree:

toplevel/

  .svn/ 

... 2ndlevel/ (no .svn here) ... 3rdlevel/ .svn/ code_to_commit

Trying

cd 3rdlevel
svn commit -m 'bla'

produced the error

svn: '2ndlevel' has no ancestry information

which I didn't understand, since the 3rdlevel was a check out of it's own, not related to the toplevel.

subversion seems to look up .svn/ directories along the complete absolute path of the directory which is checked in and hasn't recorded that 3rdlevel/ is a "checkout root".

The solution: removing the .svn in the toplevel dir (putting a reasonable one in 2ndlevel by adding it to svn might have worked, too).

How to get a different look for some pages of a plone-site

erstellt von Philip Bauer zuletzt geändert: 2014-06-30T13:03:27+01:00
It's pretty easy to attach a special look to whole sections. Styling only some pages is a different story.

I'm currently working on a site where the customer wanted some pages to look differently than others.

(I should really not do the "Hey you could also do this and that" when my time is limited!)

The pages should have a additional css and a line of text above the heading. I wanted it to look like this:

foo

Here "what if foo..." is the Name of the folder that contains the document "...hits the bar?", being the h1.

Since the old trick with body.section-foo only works for whole sections and I needed the additional text (what if foo...) anyway I decided to go with the beloved marker interfaces.

Here is how it works:

1. Add a marker interface

In your theme-product edit your browser/interfaces.py and add:

class IMySpecialStyle(Interface): 
    """Marker Interface for  Documents with a special style
    """

 

2. Register a viewlet pinned to the Interface

In your browser/configure.zcml add:

<browser:viewlet 
   name="myspecialstyle.viewlet " 
   manager="plone.app.layout.viewlets.interfaces.IAboveContentTitle" 
   template="templates/myspecialstyle_viewlet.pt" 
   layer=".interfaces.IThemeSpecific" 
   for=".interfaces.IMySpecialStyle" 
   permission="zope2.View" 
   /> 

<browser:resource 
   name="myspecialstyle.css" 
   file="resources/myspecialstyle.css" 
   /> 

The line for=".interfaces.MySpecialStyle" activates the viewlet only for content which have the marker-interface. The viewlet-manager IAboveContentTitle inserts the viewlet just before the h1-tag of the targeted document.

 

3. Add content and styles

Now add a file browser/templates/myspecialstyle_viewlet.pt containing:

<link href="myspecialstyle.css" rel="stylesheet" type="text/css" 
      tal:attributes="href string:${context/portal_url}/++resource++myspecialstyle.css"/>

<div id="myspecialstyle-viewlet">
   <h2 class="myspecialstyle-header" 
       tal:content="python: context.getParentNode().title">
          what if foo ...
   </h2>
</div>

Instead of "getParentNode.title" I could also enter the expected line of text by hand. But like this I can reuse it for other folders.

Keep in mind that for default-pages you might want the 'grandparent‘, so you could use this

tal:define="is_default_page context/@@plone_context_state/is_default_page"

to check if it's a default page, and

tal:condition="is_default_page"
tal:content="python context.getParentNode().getParentNode().title"

to get the grandparents title.

Now create browser/resources/myspecialstyle.css and add:

#myspecialstyle-viewlet {
	position: absolute;
}

.myspecialstyle-header {
	bottom:1.45em;
	font-family: "Arial Black";
	font-size: 500%;
	font-weight: bold;
	left:-22px;
	color: #e1e1e1 !important;
	position:relative;
	z-index: 0;
}

h1.documentFirstHeading {
	z-index: 1;
	position: relative;
	padding-top: 10px;
}

 

4. Use it

Restart Zope. In ZMI go to the page in question (or rather add /manage_interfaces to it's url), select IMySpecialStyle from the available Marker Interfaces and add it.

If you remove everything from the viewlet except for the <link ...>-stuff you get a really simple way to style some selected pages.

 

 

Pydev Extensions now Open Source!

erstellt von Philip Bauer zuletzt geändert: 2014-06-30T13:03:12+01:00
A great tool for python (and Zope/Plone)-development just got better

The good News:

Pydev is a great eclipse-Plugin for which I primarily use for Plone- and Zope-Development. Pydev 1.5 now includes the formerly closed-source Pydev Extensions. Check out it's amazing features.

Learn more about Plone-Development with Eclipse and Pydev at my talk at the dzug-conference in Munich next week.

 

The bad news:

It happend only two weeks after I renewed my License for Pydev-Extensions :-(

Custom search forms for plone-sites

erstellt von Philip Bauer zuletzt geändert: 2015-10-04T15:45:59+01:00
Sites with a lot of content profit hugely from custom searches. Until recently adding a custom search to a Plone-Site was cumbersome and nothing your average editor or site-admin could do.

Ever since Ross Patterson wrote collective.formcriteria all will be well.

Stop writing search forms for each and every special case by hand and start thinking of search-forms as content just like collections are custom search-results as content. Ross saved us a lot of hassle by extending these almost all-powerfull collections to create custom forms searching through the collections content. And as added value displaying the results in a much nicer and more useful way than the default search.  

Say, you want a searchfield in your site only to search through the press-releases of all your departments.

  • First add collective.formcriteria to your buildout and install it via quickinstaller.
  • Create a new collection "Press-Releases".
  • Select "summary view" as Form Results Layout in the edit-tab of your collection (thus giving you the added value of preview-images being shown if the searchable content type has a image-field, e.g. news-items).
  • Edit the collections criteria and add the contenttype "News Item" (or the folder where you put the press-releases if you don't use a special contenttype) as a criterion.
  • Use "relevance" to sort the results.
  • Add "Searchable text" as criterion without entering a text (if you choose to enter something it'll populate the search-field as default-value) and select this field to show as "Form Fields".

Your new collection now shows you all your news items. Yawn! But when you switch the display to "Search form" the content of your collection disappears and a new search field is shown. Nice!

I prefer search-forms in portlets: Create a "Search form portlet", connect it to your collection. Voilá: custom search - whereever you want it. And that was a only an easy example.

More goodness in the most recent version include:

  • The "Content"-tab now works just like with a folder, meaning you can use content-actions like copy, rename, change state and such for your search results even if they are in different folders. With that collective.formcriteria outperforms the default search in almost every aspect.
  • The new "export"-Action allows you to save the results to CSV. You can specify the used columns via in the collection's "Table Columns" fields.

For custom searches using operators such as OR or NOT you still need to write your own search-forms using AdvancedQuery (and possibly anthill.querytool). But an implementation of these operators using subcollections is already on the ToDo-List.

Get it here: http://pypi.python.org/pypi/collective.formcriteria/

ZeitRaum.Bayern - Geschichte will entdeckt werden

erstellt von Philip Bauer zuletzt geändert: 2017-03-01T12:20:14+01:00
Ein innovatives Projekt zur Geschichtsvermittlung und Visualisierung geht online.

Endlich ist es soweit, dass ZeitRaum.Bayern anlässlich der Landesausstellung des HdBG in Würzburg das Licht der Öffentlichkeit erblickt. Entwickelt wurde ZeitRaum.Bayern für die Landeszentrale für politische Bildungsarbeit. Beteiligt sind neben Starzel.de (Projektleitung, Konzept und ein wenig Programmerung) ein Team der FH Augsburg unter der Leitung von Helmut Merz und Erich Seifert (beide Zope3/Loops-Programmierung) sowie Martin Woitzik, dessen hervorragende Abschlussarbeit die Flash/Papervision3D-Oberfläche ist, sowie diverse Studenten der FH Augsburg.

Basierend auf einer Zope3/Loops-Webanwendung werden historische Informationen in einem 3D-Raum angzeigt. Die 3D-Darstellung basiert auf dem Open-Source Actionscript-Library Papervision3D.

Die Weiterentwicklung ist gegenwärtig in vollem Gange. Mit ZeitRaum.Bayern sollen künftig alle Interessierten eigene Online-Ausstellungen erstellen können. Gerade für Projekte von (Geschichts-)Leitungskursen (in Bayern heissten diese jetzt W- bzw. P-Seminare) bietet es sich an um die Ergebnisse der Projektarbeiten ansprechend zu visualisieren.

Außerdem wird im Zuge dessen die barrierefreie Variante - natürlich ohne 3D - fertig. 

Anschauen hier: www.zeitraum-bayern.de

Interaktiver Stadtplan "Topographie des Nationalsozialismus in München"

erstellt von Philip Bauer zuletzt geändert: 2012-06-13T10:29:31+01:00
OpenLayers und Plone sind ein gutes Team zur Darstellung von geografischen Informationen.

Starzel.de hat für das geplante NS-Dokumentationszentrum München seit einiger Zeit einen interaktiven Stadtplan entwickelt der nun endlich online gegangen ist. Der Plan zeigt einen Querschnitt von historisch bedeutsamen Orten, die zwischen 1918 und 1945 Schauplätze von Aufstieg und Herrschaft des Nationalsozialismus waren sowie Orte die mit Resistenz und Widerstand gegen das NS-Regime verknüpft sind.

Erweiterungen um weitere Karten, z.B. zu Erinnerungsorte an den Nationalsozialismus in München sowie Orte der künstlerischen Auseinandersetzung sind in Vorbereitung. Für den ThemenGeschichtsPfad "Der Nationalsozialismus in München" entsteht zudem eine Online-Variante mit Audioguide-Einbindung.

Eine Vorversion der Software auf Basis von scriptaculous ohne Anbindung an Mapserver (d.h. mit statischen Bildern) haben wir u.a. für eine Seite über Bayerische Berufsschulen verwendet.

Developing Plone on Ubuntu 9.04 with virtualenv

erstellt von bleicher — zuletzt geändert: 2011-02-18T15:52:24+01:00
Technical notes to overcome some obstacles

Ubuntu 9.04 "Jaunty Jackalope" removed python 2.4 libraries from the distribution, which are necessary to run Zope/Plone.

To work in a more defined environment, where other as the system libraries are installed for a specific python, people use virtualenv.

Install virtualenv, python-2.4 from the distribution repository.

Create a 

virtualenv -p python2.4 --no-site-packages myappdir

In myappdir,

source bin/active

sets some environment variables.

I use zsh with the "nounset"-Option, which the script doesn't work with, so I had to

unsetopt nounset

Install ipython or zc.buildout or other eggs you need

easy-install ipython

PIL aka python-imaging is not longer available in a a 2.4 version in Ubuntu 9.04, but contains a lot of binary code so I didn't want to build it myself.  3 options: Install an old python-imaging-2.4-package,

Install it by hand - easy_install --find-links http://download.zope.org/distribution PILwoTK or untar and python setup.py install and before that, you have to install some other image handling libs to get all the features as explained here  http://sam.stainsby.id.au/blog/?p=28

sudo apt-get install libjpeg-dev libfreetype6-dev (zlib?)

or. what I did, install the current package and link to it from the virtualenv.

In myappdir/lib/site-packages

ln -s /usr/lib/python2.5/site-packages/PIL PIL

Python complains about differing C API versions, but it seems to work.

This all looks less than perfect, esp. the PIL link hack.

Too many packaging tools.

World Plone Day 2009 in Munich

erstellt von Philip Bauer zuletzt geändert: 2014-06-30T13:04:28+01:00
Set in a beautiful Seidlvilla in the heart of Munich the World Plone Day 2009 is an event not to miss.

22. April 2009

A great day for Plone ...

The morning session of the 2009 World Plone Day in munich is devoted to talks for beginners. Here we cover basic features, case-studies, theming and customisation of Plone.

In the afternoon we tackle the advanced stuff. Topic are: Professional intranets, internationalisation an high-end case-studies.

We will be there - not only as participants. Other than the basic walk-through the beauty that is Plone and a introduction into high-end intranets I also volunteered to give a fun new talk on the créme-de-la-créme of those 2422 products with which you can extend Plone and even make it have a pony

... and a great day for schools

As if that was not enough we have a parallel one-day-mini-sprint. The Plone-Community of Munich creates a complete new website for one lucky school for free. Including design, hosting, security, some workspace-tools and all the Plone-goodies that come out-of-the-box this is not only a great chance for a school to save a lot af cash but also a good opportunity for aspiring Plone-developers to learn the ropes in a crash-course.

See the full programm at:

muenchen.worldploneday.de

Don't miss it, register now.

Starzel.de auf dem WorldPloneDay München

erstellt von Philip Bauer zuletzt geändert: 2014-06-30T13:04:34+01:00
Mit knapp 70 Teilnehmern war der WorldPloneDay in München ein echter Erfolg. Starzel.de hat dabei vier Vorträge gehalten.

Von den Teilnehmerzahlen her scheint der World Plone Day in München der zweitgrößtegrößte weltweit gewesen zu sein. Anscheinend hat er  einen Nerv getroffen: MIt fast 70 Teilnehmern war der Saal in der Seidlvilla an der Kapazitätsgrenze. Neben dem einleitenden Vortrag "Was ist Plone und was kann es für sie tun?" haben wir uns noch mit drei weiteren Vorträgen beteiligt.

  • Der Vorstellung eines Plone-basiertem interaktiven Stadtplans ohne GoogleMaps, den wir im Auftrag des Kulturreferats für das geplante NS-Dokumentationszentrum München entwickeln.
  • Eine innovative Lernplattform zur Visualisierung und Vermittlung historischen Wissens auf Basis von Zope3 mit einer Flash-Oberfläche. Ein projekt, von dem wir hier sicher bald mehr berichten werden können...
  • Zuletzt noch eine "Skin-Session", bei der wir zeigten, dass sich mit Plone jedes beliebige Design umsetzten lässt.

Der World Plone Day war auch für uns eine tolle Erfahrung, nicht zuletzt dank der tollen Zusammenarbeit inerhalb der UserGroup RZUG München - nächstes Jahr sind wir wieder mit dabei!

Zope-Konferenz in Saarbrücken

Das bedeutendste Treffen der Zope-Community war 2008 in Saarbrücken

Interessante Vorträge und das noch interessantere get-together haben wir auf dem bedeutendsten Treffen der Zope-Community weltweit, der 9. Tagung der Deutschsprachigen Zope User Group (DZUG) vom 10. -12. September 2008 in Saarbrücken erlebt.

Von Präsentationen mit Zope und Plone entwickelter Webseiten und Anwendungen über Tutorials und der Vorstellung neuer Komponenten für sichere Datenhaltung bis zu Berichten aus dem python-underground, die endlich die Zukunft der zope.org Webseite aufklären, war alles vertreten.

Wir haben den Eindruck einer vielfältigen, lebendigen und kreativen Gemeinschaft mit nach Hause genommen.

Functional Python

Die objektorientierte, dynamisch getypte Programmiersprache python, in der der web application server Zope und das content management system Plone geschrieben sind, entwickelt sich stetig auf eine überzeugende Art weiter.

Ein Beispiel dafür ist der elegante Einbau von funktionalen Sprachmerkmalen wie unendlichen Listen (als Generatoren und Iteratoren) in python.

# Sieb des Erastothenes
from itertools import count
from itertools import ifilter
def sieve(possible_primes):
  next_prime=possible_primes.next()
  yield next_prime
  for i in sieve(ifilter(lambda j: j%next_prime!=0, possible_primes)):
    yield i

def primes():
  return sieve(count(2))

ISaR mit einem neuen Gewand

Das Institute for Safety and Reliability erhält eine neue Webseite mit Plone 3.1

ISaRStarzel begrüßt ISaR als neuen Kunden. Die Homepage des zur TU gehörigen Instiuts bekommt von uns nicht nur ein brandneues Design sondern auch gleich ein Upgrade von Plone 2.1 auf die neueste Version von Plone 3.1. Ergänzend sind zudem Features wie ein Newsletter mit Singing & Dancing, ein umfangreiches Alumni-Intranet, LDAP-Anbindung etc. geplant.

World Plone Day in München

7. November ist World Plone Day!

PloneDer World Plone Day ist eine weltweite Initiative der großartigen Community des Open Source Content-Management-Systems Plone.

Das ganztägige Programm des World Plone Day in München ist nun online und umfasst Kurzvorträge und Präsentationen zu den verschiedensten Themen: Von Einführungen zu Plone, Präsentationen von diversen Plone-Websites und Plone-Webapplications bis hin zu Informationen zu Design, Intranet, SEO, Hosting u.v.a. ist für jeden Interessentenkreis etwas geboten. Neben den Vorträgen gibt es ausreichend Gelegenheit für Diskussionen´und Gespräche.

Melden Sie sich unter http://www.worldploneday.de an und nutzen Sie die Gelegenheit, Plone kennen zu lernen!

Das Team der Internetagentur Starzel beteiligt sich als Mitglieder der Münchner Plone-Community an der Ausrichtung des Münchner World Plone Days mit mehreren Vorträgen und Präsentationen. Wir würden uns freuen, auch Sie dort begrüßen zu dürfen.

Am 7. Oktober von 9:30 bis 17 Uhr in der Seidlvilla.

Mehr Infos unter http://www.worldploneday.de

 

Plone 3

erstellt von pb — zuletzt geändert: 2011-02-18T15:52:24+01:00
Die Version 3 des Open-Source CMS Plone bringt einige entscheidende Vorteile. Hier eine Top-11 der Version 3.0

Das freie Content-Management-System (CMS) Plone ist in der Version 3.0 erschienen. Das bisher schon tolle Content-Management-System, auf das u.a. die CIA und Novell setzen baut damit seinen Vorsprung weiter aus.

Einige der wichtigsten Verbesserung sind:

1. Versionierung

Was hat xy nun schon wieder an der Webseite verändert? Hmmm... Plone enthält nun out-of-the-box die Möglichkeit Änderungen an Webseiten wie in der Überarbeiten-Funktion von Word anzuzeigen und bei Bedarf zu alten Versionen zurückzukehren. Ein Top-Feature!

2. Arbeitskopien von Seiten

Umfangreiche Änderungen an Webseiten kann man nun einfach durchführen während eine Kopie der Seite weiterhin online bleibt. Man bearbeitet einfach die "working copy" und schalte diese online, sobald man mit dem Ergebnis zufrieden ist.

3. Suche in Word- und pdf-Dokumenten

Die ohnehin hervorragende Suche in Plone (LiveSearch zeigt die das Ergebnis einer Suche schon während dem Eintippen eines Suchbegriffs an!) wurde weiter verbessert. Nun werden sogar Word-Dokumente und pdf's durchsucht.

4. Link-Kontrolle

Nie wieder über kaputte Links ärgern, weil irgendeine Seite verschoben, umbenannt oder gelöscht wurde. Nie wieder den Sleuth Link Checker

bemühen. Plone 3 durchsucht interne Links nach fehlenden oder verschobenen Zielen und warnt bei dem Versuch eine verlinkte Seite zu löschen.

5. Inline-Editing

Einfach durch einen Klick auf den Text aktiviert sich der Editier-Modus. Man muss kein kompliziertes Formular ausfüllen um Seiten zu ändern.

6. Kupu 1.4

Der Editor Kupu wurde stark überarbeitet und bietet viele neue Funktionen u.a. werden Seiten automatisch auf Anker durchsucht auf die man verweisen kann ohne sie von Hand einzugeben. Bildgrößen kann man verändern und vieles mehr.

7. Neue Workflows

Plone kommt jetzt mit neuen Workflows für einige wichtigste Standardanwendungsbereiche. Unter anderem sind das:

  • Ein einfacher sichtbar/unsichtbar-Workflow für kleinere Webseiten
  • ein mächtiger Intranet/Extranet Workflow
  • ein Community-Workflow

Die Workflow-Engine wird damit noch leichter zugänglich und die Entwicklung von Intranet/Extranet-Lösungen einfacher.

8. Sharing

Mit der neuen Sharing-Funktion ist es noch einfacher Inhalte anderen Usern zugänglich zu machen: Mit ein paar Klicks stellt man ein, wer die Inhalte eines Ordners anschauen, verändern oder freischalten kann . Das geht für einzelne Personen oder ganze Gruppen.

9. Authentifizierung mit OpenID, LDAP und Co.

Mit der Unterstützung von OpenID, LDAP und Active Directory wird die integration von externen Authentifizierungssystemen noch leichter.

10. Universeller Support für Wiki-Funktionen

Man kann jetzt in Plone durchgängig die wiki-Methode verwenden um Seiten zu erstellen und zu verlinken. Und das ohne die Wiki-typischen Schwächen im Bereich User-Management und Seitenstruktur

11. Automatische Inhaltsverzeichnisse

Lange Seiten werden schnell unübersichtlich, Inhaltsverzeichnisse zu machen ist aber langweilig und fehleranfällig. Plone übernimmt diesen Job und erstellt automatisch aus den Überschriften und Unterüberschriften ein Inhaltsverzeichnis.

Eine vollständige Liste der Features von Plone und findet sich hier

How to add new content on top of a folder

By default Plone adds new content to the bottom of a folder. With zope3 event-handlers you can change that behaviour easily.

Here we use event handlers to push newly-created NewsItems to the top of the page. Usefull for blog-style folders. It doesn't apply when editing existing content.

Add a new subscriber to your configure.zcml (you might want to use your site-policy- or theme-product):

<subscriber 
   for="Products.ATContentTypes.interface.news.IATNewsItem
   zope.app.container.interfaces.IObjectAddedEvent"
   handler=".newsitemmover.moveToTop" />

Create the new file newsitemmover.py containing

def moveToTop(obj, event):
   """
   Moves Items to the top of its folder
   """
   folder = obj.getParentNode()
   if folder != None:
       folder.moveObjectsToTop(obj.id)

Restart Zope.

The tricky part is to choose the correct Interfaces for the subscriber. Keep in mind that IObjectAddedEvent is called several times during adding a NewsItem. It doen't matter in this case since the item can't be any more on top than on top :-)

Nostalgraphie - das neue Fotografie-Erlebnis in München

Nostalgie und Fotografie in einer einzigartigen Verbindung: Das Atelier "Noir" hat ein Zuhause im Internet gefunden.

Im Atelier „Noir“, in der Münchner Maxvorstadt tauchen Sie ein in eine Bilderwelt aus Licht und Schatten, Humor und Melancholie und einem Hauch von Hollywood. Einmal Dandy oder Diva sein, Engel oder Vamp, Bogart oder Bacall, dieser Traum wird hier Wirklichkeit.

Starzel Webdesign erstellt eine nette kleine Homepage für das Studio mit dem ganz anderen Photografieerlebnis in schickem gold & schwarz.

www.atelier-noir.de

Starzel begrüßt jambit als neuen Kunden

Starzel Webdesign erstellt eine neue Webseite für den IT-Dienstleiter jambit.

Der Münchener IT-Dienstleiter jambit hat Starzel Webesign beauftragt seine neue Webseite mit Plone umzusetzen. Der schicke Designentwurf stammt von der Designerin Andrea Hölzle. Die Seite wird mit dem brandneuen Plone 3.1 umgesetzt und geht wohl im Juni 2008 online. Wir freuen uns über die Zusammenarbeit!