Just tested it out with oxi18n, and IT WORKS, this is what i have done:

==module config==
oxi18n => test_oxi18n

==modules/test_oxi18n.php==
<?php
class Test_oxI18n extends test_oxi18n_parent {}

...so till now nothing special and it NOT works, for the test i
generated some test output in the oxarticle constructor, like this:

$class = get_class($this);
$chain = array();
do {
  $chain []= $class;
} while ($class = get_parent_class($class));
debug(implode(' < ', $chain));

The debug log shows me the following class chain:
oxArticle < oxI18n < oxBase < oxSuperCfg

Now the changes to the oxid-core, to get it work:

==oxarticle.php==
Replace:
class oxArticle extends oxI18n implements oxIArticle, oxIUrl
With:
$parentClass = oxUtilsObject::getInstance()->getClassName('oxi18n');
eval("class oxI18n_infile_parent extends $parentClass {}");
class oxArticle extends oxI18n_infile_parent implements oxIArticle, oxIUrl

...it WORKS and this is class chain:
oxArticle < oxI18n_infile_parent < Test_oxI18n < test_oxi18n_parent <
oxI18n < oxBase < oxSuperCfg

Of course, this need to be done with every class that extends i18n and
this is a bit work, but at least for
oxubase and oxbase it would be worth.

best regards, Holger



-- 
Holger Kohnen
(Webentwickler)

Anklamer Str. 35
10115 Berlin

[email protected]
http://www.holgerkohnen.de

030 / 788 37 22
0173 / 38 62 791
_______________________________________________
dev-general mailing list
[email protected]
http://dir.gmane.org/gmane.comp.php.oxid.general

Reply via email to