I just tried to use Zend's session namespaces in a plugin, and failed. As it seems, the usage of session_start and of $_SESSION in Piwik prevents plugins from using this.
The attached patch should apply cleanly against 0.4.1, I replaced every occurance of $_SESSION with a new Zend session namespace named after the core component/plugin.
I tested the Installer plugin, should work fine.
Keywords: session handling zend
Attachment:
session-handling.2.patch
Attachment:
session-handling.patch
my bad, forgot to add plugins/Dashboard to the patch. The comment in core/Config.php has been updated too.
Instead of removing session_start(), shouldn't it be replaced with Zend_Session::start()?
Look at libs/Zend/Session/Namespace.php, line 116 - it's called by the constructor anyway.
(In [1276]) Fixes #828 - use Zend_Session / Zend_Session_Namespace
(In [1286]) refs #828 - fix 'Trying to get property of non-object' error
PHP 5.2.0 bug causes:
Indirect modification of overloaded property Zend_Session_Namespace::$skipThisStep has no effect
in '/home/hostnser/sd/phpmv/plugins/Installation/Controller.php' at the line 212
(In [1348]) fixes #828 - workaround ZF1743 and refactor session handling code