Welcome Guest, Not a member yet? Register   Sign In
Arrange Controllers in Sub Folders
#5

[eluser]Unknown[/eluser]
Thanks @reidz

It really works. Here is how to use the code:
Created a file named MY_Router.php in the application/libraries/ and paste the code into it. That is it!

[quote author="reidz" date="1290799391"]im overiding Router library in CI with this code, used this code as your own library then solved
sorry i forgot from where i got this code, so credit goes to original coder
Code:
<?php

/*
* Custom router function v 0.1
*
* Add functionality : read into more than one sub-folder
*
*/

Class MY_Router extends CI_Router
{
    Function MY_Router()
    {
        parent::CI_Router();
    }

    function _validate_request($segments)
    {
        if (file_exists(APPPATH.'controllers/'.$segments[0].EXT))
        {
            return $segments;
        }

        if (is_dir(APPPATH.'controllers/'.$segments[0]))
        {
            $this->set_directory($segments[0]);
            $segments = array_slice($segments, 1);

            /* ----------- ADDED CODE ------------ */

            while(count($segments) > 0 && is_dir(APPPATH.'controllers/'.$this->directory.$segments[0]))
            {
                // Set the directory and remove it from the segment array
            $this->set_directory($this->directory . $segments[0]);
            $segments = array_slice($segments, 1);
            }

            /* ----------- END ------------ */

            if (count($segments) > 0)
            {
                if ( ! file_exists(APPPATH.'controllers/'.$this->fetch_directory().$segments[0].EXT))
                {
                    show_404($this->fetch_directory().$segments[0]);
                }
            }
            else
            {
                $this->set_class($this->default_controller);
                $this->set_method('index');

                if ( ! file_exists(APPPATH.'controllers/'.$this->fetch_directory().$this->default_controller.EXT))
                {
                    $this->directory = '';
                    return array();
                }
            }
            return $segments;
        }

        show_404($segments[0]);
    }
}

?>

hope it works for you
[/quote]


Messages In This Thread
Arrange Controllers in Sub Folders - by El Forum - 11-26-2010, 05:47 AM
Arrange Controllers in Sub Folders - by El Forum - 11-26-2010, 06:49 AM
Arrange Controllers in Sub Folders - by El Forum - 11-26-2010, 07:23 AM
Arrange Controllers in Sub Folders - by El Forum - 11-26-2010, 07:53 AM
Arrange Controllers in Sub Folders - by El Forum - 11-26-2010, 12:49 PM



Theme © iAndrew 2016 - Forum software by © MyBB