Jason Ayer
Jason Ayer

Reputation: 597

CI HMVC: How to retrieve params from Modules::run()

How do I retrieve (and process) the params I have being passed in from this...

Modules::load('MembersList', $this->input->get(NULL, TRUE);

... into the module its being passed into?

<?php defined('BASEPATH') OR exit('No direct script access allowed');

class MemberList extends MX_Controller {

    function __construct()
    {
        parent::__construct();
        $this->load->model('memberslist_model');
    }

    public function index()
    {
        // $params = how_do_i_retrieve it?

        if ( ! isset($list) || $list == 'individuals')
        {
            $data['module'] = 'Individuals';

            $data['results'] = $this->memberslist_model->list_individuals();
            $data['count'] = count($data['results']);

            $data['view'] = $this->load->view('list_individuals', $data, TRUE);
        }

        if ( $list == 'families')
        {
            $data['module'] = 'Families';
        }

        return $this->load->view('memberslist', $data, TRUE);
    }

    public function settings()
    {
        $data['settings'] = $this->memberslist_model->settings();
        return $this->load->view('settings', $data, TRUE);
    }
}

I understand that it is being passed as URI segments like codeigniter but I've tried everything and I can't get it to work.

Upvotes: 0

Views: 526

Answers (1)

Atural
Atural

Reputation: 5439

I'm not sure which version you use, but you can try this:

$whatEver = Modules::run('MembersList/index', $this->input->get(NULL, TRUE));

class MemberList extends MX_Controller {

    function __construct()
    {
        parent::__construct();
        $this->load->model('memberslist_model');
    }

    public function index($params)
    {
        print_r($params);
        // $params = how_do_i_retrieve it?

        if ( ! isset($list) || $list == 'individuals')
        {
            $data['module'] = 'Individuals';

            $data['results'] = $this->memberslist_model->list_individuals();
            $data['count'] = count($data['results']);

            $data['view'] = $this->load->view('list_individuals', $data, TRUE);
        }

        if ( $list == 'families')
        {
            $data['module'] = 'Families';
        }

        return $this->load->view('memberslist', $data, TRUE);
    }

    public function settings()
    {
        $data['settings'] = $this->memberslist_model->settings();
        return $this->load->view('settings', $data, TRUE);
    }
}

Upvotes: 1

Related Questions