В чем ошибка? Call to a member function on a non-object in при $smarty->assign()

Alex

Новичок
В чем ошибка? Call to a member function on a non-object in при $smarty->assign()

При вызове метода
PHP:
 $smarty->assign("var1", $var1);
в методе другого класса
PHP:
class debug
{
        var $name =  'debug';

	function variables()
	{
            $smarty->assign("var1", $var1); // !!!!!!!!!!!!!!!!
	}
}
Происходит ошибка "Fatal error: Call to a member function on a non-object in"
При вызове assign вне метода класса ошибки не происходит. Что делаю неправильно?

index.php
PHP:
<?
//init session
session_start();
//init smarty
define('SMARTY_DIR', './cgi-bin/smarty/'); 
define('TEMPLATES', './htdocs/'); 
define('TEMPLATES_C', './templates_c/');
require_once(SMARTY_DIR . 'Smarty.class.php');
$smarty = new Smarty;
$smarty->compile_check = TRUE; 
$smarty->force_compile = TRUE;
$smarty->template_dir  = TEMPLATES;
$smarty->compile_dir  = TEMPLATES_C;
$smarty->config_dir = './cfg/';
$smarty->caching = FALSE;
.
.
.
$smarty->display('index.html');
?>
 
Сверху