| 
									
										
										
										
											2012-11-05 22:42:58 +00:00
										 |  |  | <?php | 
					
						
							| 
									
										
										
										
											2015-05-11 21:38:52 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2012-11-05 22:42:58 +00:00
										 |  |  | /** | 
					
						
							| 
									
										
										
										
											2015-05-11 21:38:52 +00:00
										 |  |  |  * PHPExcel_Writer_Abstract | 
					
						
							| 
									
										
										
										
											2012-11-05 22:42:58 +00:00
										 |  |  |  * | 
					
						
							| 
									
										
										
										
											2015-05-02 22:50:37 +00:00
										 |  |  |  * Copyright (c) 2006 - 2015 PHPExcel | 
					
						
							| 
									
										
										
										
											2012-11-05 22:42:58 +00:00
										 |  |  |  * | 
					
						
							|  |  |  |  * This library is free software; you can redistribute it and/or | 
					
						
							|  |  |  |  * modify it under the terms of the GNU Lesser General Public | 
					
						
							|  |  |  |  * License as published by the Free Software Foundation; either | 
					
						
							|  |  |  |  * version 2.1 of the License, or (at your option) any later version. | 
					
						
							|  |  |  |  * | 
					
						
							|  |  |  |  * This library is distributed in the hope that it will be useful, | 
					
						
							|  |  |  |  * but WITHOUT ANY WARRANTY; without even the implied warranty of | 
					
						
							|  |  |  |  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU | 
					
						
							|  |  |  |  * Lesser General Public License for more details. | 
					
						
							|  |  |  |  * | 
					
						
							|  |  |  |  * You should have received a copy of the GNU Lesser General Public | 
					
						
							|  |  |  |  * License along with this library; if not, write to the Free Software | 
					
						
							|  |  |  |  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA | 
					
						
							|  |  |  |  * | 
					
						
							|  |  |  |  * @category   PHPExcel | 
					
						
							|  |  |  |  * @package    PHPExcel_Writer | 
					
						
							| 
									
										
										
										
											2015-05-02 22:50:37 +00:00
										 |  |  |  * @copyright  Copyright (c) 2006 - 2015 PHPExcel (http://www.codeplex.com/PHPExcel) | 
					
						
							| 
									
										
										
										
											2015-05-11 21:38:52 +00:00
										 |  |  |  * @license    http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt    LGPL | 
					
						
							| 
									
										
										
										
											2012-11-05 22:42:58 +00:00
										 |  |  |  * @version    ##VERSION##, ##DATE##
 | 
					
						
							|  |  |  |  */ | 
					
						
							|  |  |  | abstract class PHPExcel_Writer_Abstract implements PHPExcel_Writer_IWriter | 
					
						
							|  |  |  | { | 
					
						
							| 
									
										
										
										
											2015-05-11 21:38:52 +00:00
										 |  |  |     /** | 
					
						
							|  |  |  |      * Write charts that are defined in the workbook? | 
					
						
							|  |  |  |      * Identifies whether the Writer should write definitions for any charts that exist in the PHPExcel object; | 
					
						
							|  |  |  |      * | 
					
						
							|  |  |  |      * @var    boolean | 
					
						
							|  |  |  |      */ | 
					
						
							| 
									
										
										
										
											2015-05-20 18:17:17 +00:00
										 |  |  |     protected $includeCharts = false; | 
					
						
							| 
									
										
										
										
											2012-11-05 22:42:58 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2015-05-11 21:38:52 +00:00
										 |  |  |     /** | 
					
						
							|  |  |  |      * Pre-calculate formulas | 
					
						
							|  |  |  |      * Forces PHPExcel to recalculate all formulae in a workbook when saving, so that the pre-calculated values are | 
					
						
							|  |  |  |      *    immediately available to MS Excel or other office spreadsheet viewer when opening the file | 
					
						
							|  |  |  |      * | 
					
						
							|  |  |  |      * @var boolean | 
					
						
							|  |  |  |      */ | 
					
						
							| 
									
										
										
										
											2015-05-22 07:03:34 +00:00
										 |  |  |     protected $preCalculateFormulas = true; | 
					
						
							| 
									
										
										
										
											2012-11-05 22:42:58 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2015-05-11 21:38:52 +00:00
										 |  |  |     /** | 
					
						
							|  |  |  |      * Use disk caching where possible? | 
					
						
							|  |  |  |      * | 
					
						
							|  |  |  |      * @var boolean | 
					
						
							|  |  |  |      */ | 
					
						
							|  |  |  |     protected $_useDiskCaching = false; | 
					
						
							| 
									
										
										
										
											2012-11-05 22:42:58 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2015-05-11 21:38:52 +00:00
										 |  |  |     /** | 
					
						
							|  |  |  |      * Disk caching directory | 
					
						
							|  |  |  |      * | 
					
						
							|  |  |  |      * @var string | 
					
						
							|  |  |  |      */ | 
					
						
							|  |  |  |     protected $_diskCachingDirectory    = './'; | 
					
						
							| 
									
										
										
										
											2012-11-05 22:42:58 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2015-05-11 21:38:52 +00:00
										 |  |  |     /** | 
					
						
							|  |  |  |      * Write charts in workbook? | 
					
						
							|  |  |  |      *        If this is true, then the Writer will write definitions for any charts that exist in the PHPExcel object. | 
					
						
							|  |  |  |      *        If false (the default) it will ignore any charts defined in the PHPExcel object. | 
					
						
							|  |  |  |      * | 
					
						
							|  |  |  |      * @return    boolean | 
					
						
							|  |  |  |      */ | 
					
						
							| 
									
										
										
										
											2015-05-15 11:17:40 +00:00
										 |  |  |     public function getIncludeCharts() | 
					
						
							|  |  |  |     { | 
					
						
							| 
									
										
										
										
											2015-05-20 18:17:17 +00:00
										 |  |  |         return $this->includeCharts; | 
					
						
							| 
									
										
										
										
											2015-05-11 21:38:52 +00:00
										 |  |  |     } | 
					
						
							| 
									
										
										
										
											2012-11-05 22:42:58 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2015-05-11 21:38:52 +00:00
										 |  |  |     /** | 
					
						
							|  |  |  |      * Set write charts in workbook | 
					
						
							|  |  |  |      *        Set to true, to advise the Writer to include any charts that exist in the PHPExcel object. | 
					
						
							|  |  |  |      *        Set to false (the default) to ignore charts. | 
					
						
							|  |  |  |      * | 
					
						
							|  |  |  |      * @param    boolean    $pValue | 
					
						
							|  |  |  |      * @return    PHPExcel_Writer_IWriter | 
					
						
							|  |  |  |      */ | 
					
						
							|  |  |  |     public function setIncludeCharts($pValue = false) | 
					
						
							|  |  |  |     { | 
					
						
							| 
									
										
										
										
											2015-05-20 18:17:17 +00:00
										 |  |  |         $this->includeCharts = (boolean) $pValue; | 
					
						
							| 
									
										
										
										
											2015-05-11 21:38:52 +00:00
										 |  |  |         return $this; | 
					
						
							|  |  |  |     } | 
					
						
							| 
									
										
										
										
											2012-11-05 22:42:58 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  |     /** | 
					
						
							| 
									
										
										
										
											2012-11-06 22:53:58 +00:00
										 |  |  |      * Get Pre-Calculate Formulas flag | 
					
						
							| 
									
										
										
										
											2015-05-11 21:38:52 +00:00
										 |  |  |      *     If this is true (the default), then the writer will recalculate all formulae in a workbook when saving, | 
					
						
							|  |  |  |      *        so that the pre-calculated values are immediately available to MS Excel or other office spreadsheet | 
					
						
							|  |  |  |      *        viewer when opening the file | 
					
						
							|  |  |  |      *     If false, then formulae are not calculated on save. This is faster for saving in PHPExcel, but slower | 
					
						
							|  |  |  |      *        when opening the resulting file in MS Excel, because Excel has to recalculate the formulae itself | 
					
						
							| 
									
										
										
										
											2012-11-05 22:42:58 +00:00
										 |  |  |      * | 
					
						
							|  |  |  |      * @return boolean | 
					
						
							|  |  |  |      */ | 
					
						
							| 
									
										
										
										
											2015-05-15 11:17:40 +00:00
										 |  |  |     public function getPreCalculateFormulas() | 
					
						
							|  |  |  |     { | 
					
						
							| 
									
										
										
										
											2015-05-22 07:03:34 +00:00
										 |  |  |         return $this->preCalculateFormulas; | 
					
						
							| 
									
										
										
										
											2012-11-05 22:42:58 +00:00
										 |  |  |     } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     /** | 
					
						
							|  |  |  |      * Set Pre-Calculate Formulas | 
					
						
							| 
									
										
										
										
											2015-05-11 21:38:52 +00:00
										 |  |  |      *        Set to true (the default) to advise the Writer to calculate all formulae on save | 
					
						
							|  |  |  |      *        Set to false to prevent precalculation of formulae on save. | 
					
						
							| 
									
										
										
										
											2012-11-05 22:42:58 +00:00
										 |  |  |      * | 
					
						
							| 
									
										
										
										
											2015-05-11 21:38:52 +00:00
										 |  |  |      * @param boolean $pValue    Pre-Calculate Formulas? | 
					
						
							|  |  |  |      * @return    PHPExcel_Writer_IWriter | 
					
						
							| 
									
										
										
										
											2012-11-05 22:42:58 +00:00
										 |  |  |      */ | 
					
						
							| 
									
										
										
										
											2015-05-15 11:17:40 +00:00
										 |  |  |     public function setPreCalculateFormulas($pValue = true) | 
					
						
							|  |  |  |     { | 
					
						
							| 
									
										
										
										
											2015-05-22 07:03:34 +00:00
										 |  |  |         $this->preCalculateFormulas = (boolean) $pValue; | 
					
						
							| 
									
										
										
										
											2015-05-11 21:38:52 +00:00
										 |  |  |         return $this; | 
					
						
							| 
									
										
										
										
											2012-11-05 22:42:58 +00:00
										 |  |  |     } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2015-05-11 21:38:52 +00:00
										 |  |  |     /** | 
					
						
							|  |  |  |      * Get use disk caching where possible? | 
					
						
							|  |  |  |      * | 
					
						
							|  |  |  |      * @return boolean | 
					
						
							|  |  |  |      */ | 
					
						
							| 
									
										
										
										
											2015-05-15 11:17:40 +00:00
										 |  |  |     public function getUseDiskCaching() | 
					
						
							|  |  |  |     { | 
					
						
							| 
									
										
										
										
											2015-05-11 21:38:52 +00:00
										 |  |  |         return $this->_useDiskCaching; | 
					
						
							|  |  |  |     } | 
					
						
							| 
									
										
										
										
											2012-11-05 22:42:58 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2015-05-11 21:38:52 +00:00
										 |  |  |     /** | 
					
						
							|  |  |  |      * Set use disk caching where possible? | 
					
						
							|  |  |  |      * | 
					
						
							|  |  |  |      * @param     boolean     $pValue | 
					
						
							|  |  |  |      * @param    string        $pDirectory        Disk caching directory | 
					
						
							|  |  |  |      * @throws    PHPExcel_Writer_Exception    when directory does not exist | 
					
						
							|  |  |  |      * @return PHPExcel_Writer_Excel2007 | 
					
						
							|  |  |  |      */ | 
					
						
							| 
									
										
										
										
											2015-05-15 11:17:40 +00:00
										 |  |  |     public function setUseDiskCaching($pValue = false, $pDirectory = null) | 
					
						
							|  |  |  |     { | 
					
						
							| 
									
										
										
										
											2015-05-11 21:38:52 +00:00
										 |  |  |         $this->_useDiskCaching = $pValue; | 
					
						
							| 
									
										
										
										
											2012-11-05 22:42:58 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2015-05-15 11:17:40 +00:00
										 |  |  |         if ($pDirectory !== null) { | 
					
						
							| 
									
										
										
										
											2015-05-11 21:38:52 +00:00
										 |  |  |             if (is_dir($pDirectory)) { | 
					
						
							|  |  |  |                 $this->_diskCachingDirectory = $pDirectory; | 
					
						
							|  |  |  |             } else { | 
					
						
							|  |  |  |                 throw new PHPExcel_Writer_Exception("Directory does not exist: $pDirectory"); | 
					
						
							|  |  |  |             } | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  |         return $this; | 
					
						
							|  |  |  |     } | 
					
						
							| 
									
										
										
										
											2012-11-05 22:42:58 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2015-05-11 21:38:52 +00:00
										 |  |  |     /** | 
					
						
							|  |  |  |      * Get disk caching directory | 
					
						
							|  |  |  |      * | 
					
						
							|  |  |  |      * @return string | 
					
						
							|  |  |  |      */ | 
					
						
							| 
									
										
										
										
											2015-05-15 11:17:40 +00:00
										 |  |  |     public function getDiskCachingDirectory() | 
					
						
							|  |  |  |     { | 
					
						
							| 
									
										
										
										
											2015-05-11 21:38:52 +00:00
										 |  |  |         return $this->_diskCachingDirectory; | 
					
						
							|  |  |  |     } | 
					
						
							| 
									
										
										
										
											2012-11-05 22:42:58 +00:00
										 |  |  | } |