Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Campaign Dashboard: replace calls to dead core BAO methods - incompatibility with CiviCRM 5.67+ #114

Closed
jofranz opened this issue Oct 5, 2023 · 13 comments · Fixed by #115
Labels
bug status:fixed The issue has been resolved (usually by committing/merging code)
Milestone

Comments

@jofranz
Copy link
Member

jofranz commented Oct 5, 2023

 ------ ----------------------------------------------------------------------------------- 
  Line   CRM/CampaignManager/CampaignTree/Page/Dashboard.php                                
 ------ ----------------------------------------------------------------------------------- 
  104    Call to an undefined static method CRM_Campaign_BAO_Campaign::getCampaignCount().  
  133    Call to an undefined static method CRM_Campaign_BAO_Survey::getSurveyCount().      
  162    Call to an undefined static method CRM_Campaign_BAO_Petition::getPetitionCount().  
 ------ ----------------------------------------------------------------------------------- 

Maybe someone can estimate the implications?

internal ref: 22950

@bjendres
Copy link
Member

bjendres commented Oct 5, 2023

Probably @jensschuppe would know best at this point.

@jensschuppe
Copy link
Collaborator

jensschuppe commented Oct 9, 2023

Those are Core methods, why should they be undefined, @jofranz? Have they been removed from Core in a recent version? They might have got moved into the Core civi_campaign extension which needs to be installed for Campaign Manager to work correctly, though.

@jofranz
Copy link
Member Author

jofranz commented Oct 9, 2023

I'm always scanning against current master. Looks like they got removed from coleman two weeks ago:

civicrm/civicrm-core@50a6565

@jensschuppe
Copy link
Collaborator

I see, they got removed on the current master branch of Core with civicrm/civicrm-core@50a6565 in civicrm/civicrm-core#27271 which seems to be scheduled for 5.67.

@jensschuppe
Copy link
Collaborator

Those occurrences should be refactored, using the API with SelectRowCount as a quick fix. We should also check whether Campaign Manager's dashboard is still useful now that the Core one has moved to SearchKit.

@jensschuppe jensschuppe changed the title Calling dead core BAO methods Campaign Dashboard: replace calls to dead core BAO methods - incompatibility with CiviCRM 5.67+ Oct 9, 2023
@jensschuppe jensschuppe added the bug label Oct 9, 2023
@jensschuppe jensschuppe added this to the 1.5 milestone Oct 9, 2023
@jensschuppe jensschuppe removed their assignment Oct 9, 2023
@bjendres
Copy link
Member

bjendres commented Oct 9, 2023

We should also check whether Campaign Manager's dashboard is still useful now that the Core one has moved to SearchKit.

We're not talking about the KPIs here, right? If not, I would agree.

@jensschuppe
Copy link
Collaborator

Seems to be both, kind of. But removing/adjusting the dashboard would be another issue, anyway.

@eileenmcnaughton
Copy link

It looks like the plan is to migrate to a new extension - #112

@bjendres
Copy link
Member

It looks like the plan is to migrate to a new extension - #112

Yes, but that's a long term thing. We'll still keep this version around for a while.

@sluc23 do you have a timeline for your re-implementation?

@sluc23
Copy link

sluc23 commented Oct 10, 2023

I have an alpha release, I think i can publish it int 1-2 weeks max.. it has some basic features for now and a different technical approach on some areas, but I'll be happy to hear your comments.
You can have a preview in the repo https://github.com/ixiam/campaignmanager

Keep you posted.

PS: the idea is to move it to lab.c.org and publish it under the name campaignmanager

@jensschuppe
Copy link
Collaborator

@sluc23 Are there plans for providing a migration path from de.systopia.campaign to campaignmanager?

@sluc23
Copy link

sluc23 commented Oct 10, 2023

@jensschuppe I was checking what to migrate and I don't find much to do.. the KPI part has been completely rewritten using new CiviCRM Entitties instead of using custom cache tables.. I don't see a way to migrate that.. and the rest of features has not been ported yet.

I was thinking on integrating extension expenses, for the expenses part, instead of develop that again, but that would be in a next phase

@jensschuppe
Copy link
Collaborator

There are at least some settings (that might or might not have to be migrated) and some database tables for activity statistics (if that is enabled), and the campaign_expense_types option group.

But I think you'll know best - maybe you can document your migration from de.systopia.campaign to your new extension so that others know what to pay attention to …?

@jensschuppe jensschuppe added the status:fixed The issue has been resolved (usually by committing/merging code) label Oct 11, 2023
@jensschuppe jensschuppe modified the milestones: 1.5, 1.4 Oct 11, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug status:fixed The issue has been resolved (usually by committing/merging code)
Projects
None yet
Development

Successfully merging a pull request may close this issue.

5 participants