Skip to content

Commit 1b849ec

Browse files
committed
Added PHPWord_Exception and exception when could not copy the template
1 parent 5d6bb15 commit 1b849ec

File tree

3 files changed

+59
-3
lines changed

3 files changed

+59
-3
lines changed

changelog.txt

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,4 +29,5 @@ Fixed in branch for release 0.7 :
2929
- General: (MarkBaker) - Add superscript/subscript styling in Excel2007 Writer
3030
- General: (deds) - add indentation support to paragraphs
3131
- General: (Progi1984) GH-27 - Support for Composer
32-
- General: (Progi1984) - Basic CI with Travis
32+
- General: (Progi1984) - Basic CI with Travis
33+
- General: (Progi1984) - Added PHPWord_Exception and exception when could not copy the template

src/PHPWord/Exception.php

Lines changed: 52 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,52 @@
1+
<?php
2+
/**
3+
* PHPWord
4+
*
5+
* Copyright (c) 2009 - 2010 PHPWord
6+
*
7+
* This library is free software; you can redistribute it and/or
8+
* modify it under the terms of the GNU Lesser General Public
9+
* License as published by the Free Software Foundation; either
10+
* version 2.1 of the License, or (at your option) any later version.
11+
*
12+
* This library is distributed in the hope that it will be useful,
13+
* but WITHOUT ANY WARRANTY; without even the implied warranty of
14+
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
15+
* Lesser General Public License for more details.
16+
*
17+
* You should have received a copy of the GNU Lesser General Public
18+
* License along with this library; if not, write to the Free Software
19+
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
20+
*
21+
* @category PHPWord
22+
* @package PHPWord
23+
* @copyright Copyright (c) 2009 - 2010 PHPWord (http://www.codeplex.com/PHPWord)
24+
* @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL
25+
* @version ##VERSION##, ##DATE##
26+
*/
27+
28+
29+
/**
30+
* PHPWord_Exception
31+
*
32+
* @category PHPWord
33+
* @package PHPWord
34+
* @copyright Copyright (c) 2006 - 2013 PHPWord (http://www.codeplex.com/PHPWord)
35+
*/
36+
class PHPWord_Exception extends Exception {
37+
/**
38+
* Error handler callback
39+
*
40+
* @param mixed $code
41+
* @param mixed $string
42+
* @param mixed $file
43+
* @param mixed $line
44+
* @param mixed $context
45+
*/
46+
public static function errorHandlerCallback($code, $string, $file, $line, $context) {
47+
$e = new self($string, $code);
48+
$e->line = $line;
49+
$e->file = $file;
50+
throw $e;
51+
}
52+
}

src/PHPWord/Template.php

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -65,8 +65,11 @@ class PHPWord_Template {
6565
public function __construct($strFilename) {
6666
$path = dirname($strFilename);
6767
$this->_tempFileName = $path.DIRECTORY_SEPARATOR.time().'.docx';
68-
69-
copy($strFilename, $this->_tempFileName); // Copy the source File to the temp File
68+
69+
// Copy the source File to the temp File
70+
if(!copy($strFilename, $this->_tempFileName)){
71+
throw new PHPWord_Exception('Could not copy the template from '.$strFilename.' to '.$this->_tempFileName.'.');
72+
}
7073

7174
$this->_objZip = new ZipArchive();
7275
$this->_objZip->open($this->_tempFileName);

0 commit comments

Comments
 (0)