I'm migrating old code to 5.7, and I'm running into a weird issue when it comes to helpers. I'm working with two packages - let's call them A and B. Package A one implements a ServiceProvider. I would like to use it in a controller in package B, but it seems unable to find it properly. I'm configuring it in the install()
function of package A, as follows
$providers = Config::get('providers');
if (!$providers) {
$providers = array('group_membership' => '\Concrete\Package\A\Src\GroupMembership\GroupMembershipProvider');
} else {
$providers['group_membership'] = '\Concrete\Package\A\Src\GroupMembership\GroupMembershipProvider';
}
Config::set('providers', $providers);
And in the ServiceProvider itself, I bind it accordingly;
<?php namespace Concrete\Package\A\Src\GroupMembership;
use \Concrete\Core\Foundation\Service\Provider as ServiceProvider;
class GroupMembershipProvider extends ServiceProvider
{
public function register() {
$this->app->bind('helper/group_membership', 'Concrete\Package\A\Src\GroupMembership\GroupMembershipProvider');
}
}
Then when I want to use in package A, this works just fine:
$helper = Core::make('helper/group_membership');
But when I do that in package B, it tells me:
Class helper/group_membership does not exist
What could I do, except for merging the two packages together? What may be causing this?