Replies: 8 comments
-
You are right on target with your thinking. It has been a while since the last time I converted a customer backend to a CRM backend but I believe most of the methods map over to the new system, just split up into separate classes. For support levels and contracts, I don't recall if you can totally ignore them or if you will need to have some basic code that just returns a stub contract. Sorry we don't have good documentation for this, but feel free to ask me any questions you might have and I'll do my best to help. |
Beta Was this translation helpful? Give feedback.
-
@balsdorf re-did customer integration in 2.4, or 3.0, I think. However, While the models may make sense, I don't completely agree with the integration technology. I've been migrating workflow methods to events system, last most recent integration change: #497 I believe Customer and Partner integrations should be moved to that approach as well. However as I don't use neither of them, for me to change integration is hard. |
Beta Was this translation helpful? Give feedback.
-
Hey Guys, I'm just now getting back to this...and I'm stuck. Here's what I did... I removed any existing
I made all my classes have fresh class names extending the abstract name, such as:
Now, when I go to Manage Projects in my browser, I don't get any Customer Integrations listed in the drop down. I'm not getting any error messages in the logs, or on screen (I turned error_reporting on). Thoughts? Ideas? |
Beta Was this translation helpful? Give feedback.
-
so, your classes are not located. there are two options:
|
Beta Was this translation helpful? Give feedback.
-
for legacy loader, you need to make your filename and class name match:
|
Beta Was this translation helpful? Give feedback.
-
Thanks guys, I appreciate it. I have the integration displaying in the drop down now. Now to actually get it to work. Some notes, so I can use this to improve the documentation.
and class names like this
I've saved these as sanitized examples. This is for version 3.5.6, and the legacy loader will probably be deprecated in the future. |
Beta Was this translation helpful? Give feedback.
-
some clarifications: for CRM only restrictions using legacy loader are:
see: https://github.com/eventum/eventum/blob/v3.7.2/lib/eventum/class.crm.php#L750 for workflow, class must end with the legacy loader is already deprecated since 3.2.0 (This version adds replacement for backend classes with adding Extension support, see #259), what my note said that it may be removed in the future (i.e if maintaining that becomes impossible). |
Beta Was this translation helpful? Give feedback.
-
Wiki has been imported to this repository (#644, #645). Pull Request to improve CRM API related documentation is very welcome (or any kind of documentation update). |
Beta Was this translation helpful? Give feedback.
-
Hey guys, like many of us, I am currently going through the motions of updating a happily working Eventum 2.2 to the latest versions for continued PHP support. (Thanks for making something that has served my team for that long!)
I've successfully migrated my database and my workflow. I'm stuck on my old customer integration (formerly
/includes/customer/{customintegration}.php
).It seems this whole section of code is completely different in 3.5.6, without an
Abstract_Backend
class to model from and no updated doc. So I would like to help.Can you confirm that this is the correct thinking...I'll need to break my current custom integration into these new CRM integration classes.
my custom CRM classes go in
/config/crm/
I'll end up having up to 5 files in this config directory for crm, customer, contact, contract and support_level.
It's structured like this: CRM has customers. Customers have contacts, contracts and support_levels
CRM
The main custom CRM class should begin with
https://github.com/eventum/eventum/blob/v3.5.6/lib/eventum/class.crm.php
My custom CRM class sets up the db connection to my production CRM system. And glues the other custom classes together.
Customer
https://github.com/eventum/eventum/blob/v3.5.6/lib/eventum/crm/class.customer.php
Contact
https://github.com/eventum/eventum/blob/v3.5.6/lib/eventum/crm/class.contact.php
My team does not use Contracts or Support Levels, but they would be similar.
In each case, I need to take the functionality in my current customer integration (
{customintegration}.php
) and reassign it to the abstract functions in my new custom extending classes in/config/crm/*
.That sound right?
Version(s) affected: 3.5.6
Beta Was this translation helpful? Give feedback.
All reactions