I'm building a custom module that denies access to the site based on some custom rule.

I;ve already build the module form, variables get stored, in hook_init I do my check against the variables I set on my custom module.

What I would like to do now is to have a template behaviour like the maintenance mode one.

By default it should be a blank page with Site name and message like maintenance mode(maybe overriding html.tpl.php). The default mymodule-page.tpl.php should leave in mymodule/templates/

This page can be overridden in theme folder so the user can apply its own style, logo, region etc...


       
    function my_custom_module_menu{
      $items['my-custom-module-page'] = array(
        'title' => t('My custom module  title'),
        'page callback' => 'my_custom_module_page_callback',
        'type' => MENU_CALLBACK,
      );
    }
    
    function my_custom_module_theme($existing, $type, $theme, $path) {
      return array(
        'my_custom_module_template' => array(
          'template' => 'my-custom-module',
          'variables' => array('variable' => NULL),
        ),
      );
    }
    
    function my_custom_module_page_callback() {
      return theme('my_custom_module_template');
    }


The code above keeps the layout of the page but I would like to override the entire page.

Which hooks should I use to achieve this?
How can I call this template from my hook_init?

Thanks in advance.