Welcome Guest, Not a member yet? Register   Sign In
want to setup multi theme configuration in smarty..
#1

[eluser]pakistanihaider[/eluser]
i am new to smarty, and i have been using codeigniter for some time, i wanted to use both of them so i can use both smarty features and codeigniter MVC.


i used this integeration process..
Code:
http://www.coolphptools.com/codeigniter-smarty


well smarty codeigniter is working fine. but now i am interested in putting theme option, i wonder how it is possible. i know it was possible in just simple smarty as people have implemented it. but is it possible to implement it in this integrated environment and have multi theme..


i know i get little confusing. but simply i want to know how to implement multi theme in smarty and codeigniter integrated environment..

My Current templates resides where normally codeigniter views should have been.

I mean

Code:
/system/application/views/templates
/system/application/views/templates_c

here is the smarty library class that i have got..
Code:
<?php  if (!defined('BASEPATH')) exit('No direct script access allowed');

/**
* Smarty Class
*
* @package  CodeIgniter
* @subpackage Libraries
* @category Smarty
* @author  Kepler Gelotte
* @link  http://www.coolphptools.com/codeigniter-smarty
*/
require_once( 'libs/Smarty-3.1.16/libs/Smarty.class.php' );

class CI_Smarty extends Smarty {

function CI_Smarty()
{
  parent::Smarty();

  $this->compile_dir = APPPATH . "views/templates_c";
  $this->template_dir = APPPATH . "views/templates";
  $this->assign( 'APPPATH', APPPATH );
  $this->assign( 'BASEPATH', BASEPATH );

  log_message('debug', "Smarty Class Initialized");
}

function __construct()
{
  parent::__construct();

  $this->compile_dir = APPPATH . "views/templates_c";
  $this->template_dir = APPPATH . "views/templates";
  $this->assign( 'APPPATH', APPPATH );
  $this->assign( 'BASEPATH', BASEPATH );

  // Assign CodeIgniter object by reference to CI
  if ( method_exists( $this, 'assignByRef') )
  {
   $ci =& get_instance();
   $this->assignByRef("ci", $ci);
  }

  log_message('debug', "Smarty Class Initialized");
}


/**
  *  Parse a template using the Smarty engine
  *
  * This is a convenience method that combines assign() and
  * display() into one step.
  *
  * Values to assign are passed in an associative array of
  * name => value pairs.
  *
  * If the output is to be returned as a string to the caller
  * instead of being output, pass true as the third parameter.
  *
  * @access public
  * @param string
  * @param array
  * @param bool
  * @return string
  */
function view($template, $data = array(), $return = FALSE)
{
  foreach ($data as $key => $val)
  {
   $this->assign($key, $val);
  }
  
  if ($return == FALSE)
  {
   $CI =& get_instance();
   if (method_exists( $CI->output, 'set_output' ))
   {
    $CI->output->set_output( $this->fetch($template) );
   }
   else
   {
    $CI->output->final_output = $this->fetch($template);
   }
   return;
  }
  else
  {
   return $this->fetch($template);
  }
}
}
// END Smarty Class

please can anyone direct me to the steps how to setup the multi theme option.




Theme © iAndrew 2016 - Forum software by © MyBB