eexcelview extentions with pdf library

I am currently using 1.8.0 phpexcel…but this little bit tricky…

1.8.0 does not have inbuild pdf library so we have to load external library like mpdf , htmlpdf, tcpdf

so download from any one vendor site and copy the folder into /protected/vendor folder

Then goto eexcelview init method and replace with this code.

what i did here is simple

i am loading [size=2]rendererName[/size][size=2] and [/size][size=2]rendererLibraryPath[/size][size=2] , then i am calling [/size][size=2]setPdfRenderer of phpexcel… It will inform [/size]

[size=2]

[/size]

[size=2]hi phpexcel i am going to use mpdf and you can load library from this renderer path :)[/size]

[size=2]

[/size]

[size=2]Have Fun[/size]





public function init()

		{

			if(isset($_GET[$this->grid_mode_var]))

				$this->grid_mode = $_GET[$this->grid_mode_var];

			if(isset($_GET['exportType']))

				$this->exportType = $_GET['exportType'];


			$lib = Yii::getPathOfAlias($this->libPath).'.php';

			if($this->grid_mode == 'export' and !file_exists($lib)) {

				$this->grid_mode = 'grid';

				Yii::log("PHP Excel lib not found($lib). Export disabled !", CLogger::LEVEL_WARNING, 'EExcelview');

			}


			if($this->grid_mode == 'export')

			{

				$this->title = $this->title ? $this->title : Yii::app()->getController()->getPageTitle();

				$this->initColumns();

				//parent::init();

				//Autoload fix

				spl_autoload_unregister(array('YiiBase','autoload'));

				Yii::import($this->libPath, true);


				$this->objPHPExcel = new PHPExcel();

				$rendererName = PHPExcel_Settings::PDF_RENDERER_MPDF;

				$rendererLibraryPath = Yii::app()->basePath . '/vendor/mpdf60';

				//  Here's the magic: you __tell__ PHPExcel what rendering engine to use

				// 	and where the library is located in your filesystem

				if (!PHPExcel_Settings::setPdfRenderer($rendererName,$rendererLibraryPath)) {

					die('NOTICE: Please set the $rendererName and $rendererLibraryPath values' .

							'<br />' .

							'at the top of this script as appropriate for your directory structure'

					);

				}


				spl_autoload_register(array('YiiBase','autoload'));

				// Creating a workbook

				$this->objPHPExcel->getProperties()->setCreator($this->creator);

				$this->objPHPExcel->getProperties()->setTitle($this->title);

				$this->objPHPExcel->getProperties()->setSubject($this->subject);

				$this->objPHPExcel->getProperties()->setDescription($this->description);

				$this->objPHPExcel->getProperties()->setCategory($this->category);

			} else

				parent::init();

		}



I hope it will help others who are trying to upgrade 1.7 phpexcel to 1.8.0 (only pdf required this settings)