Hi,
I am writing a custom module and have experienced how trying to extend the oxbase class can interfere with stuff (I have managed to disable admin ajax popups - assign various stuff to various other stuff)…
Anyway, just to be in the clear: if I extend a core class, I effectively override its functionality with mine, so my class construct, where I have used init(‘mydbtable’) had the effect of unrelated oxbase objects trying to initialize with my db fields? Or?
And if oxbase is not overloadable, how can I cause such a havoc at all?
Confused…
a little more detail: i have the following metadata file:
<?php
/**
* Module information
*/
$aModule = array(
'id' => 'mymodule',
'title' => 'Mymodule',
'description' => 'Something',
'extend' => array(
'custom_order' => 'mymodule/custom_order_ext',
'oxorder' => 'mymodule/core/my_oxorder',
'oxbase' => 'mynewcoreclass'
),
'files' => array(
'custom_order' => 'mymodule/admin/custom_order.php',
'my_oxorder' => 'mymodule/core/my_oxorder.php',
'mynewcoreclass' => 'mymodule/mynewcoreclass.php',
),
'templates' => array(
'custom_order.tpl' => 'mymoduler/out/admin/tpl/custom_order.tpl',
)
);
where custom_order is the admin view class, my_oxorder is the extension to oxorder, and mynewcoreclass is a class that is supposed to extend but not overload oxbase… Now, if I distribute these files into the system without separating them into a module, everything works fine. But as a separate module, things go wrong… Mynewcoreclass goes wrong… that is supposed to be a class like oxarticle, except it would handle data from my additional db table. Well, how do I register this class as a core class or what to call it, without implicating that I want to overload existing classes, like in the case of my_oxorder? Or do I have to just put it in the core folder after all?