}
}
+ $this->getNumberOfPages($file);
+
$this->filesize = filesize($file);
$this->created = date('Y-m-d H:i:s');
return $base64;
}
- function getNumberOfPages()
+ function getNumberOfPages($file)
{
- $ret = false;
-
require_once 'System.php';
+ $this->no_of_pages = 0;
+
+ if(!file_exists($file)){
+ return;
+ }
+
+ /*
+ * We handle pdf only at present
+ */
switch ($this->mimetype) {
case 'application/pdf' :
- $file = $this->getStoreName();
-
- if(!file_exists($file)){
- return false;
- }
+ $pdfinfo = System::which('pdfinfo');
- $pdftk = System::which('pdftk');
-
- if (empty($pdftk)) {
+ if (empty($pdfinfo)) {
return false;
}
- $cmd = "{$pdftk} {$file} dump_data";
+ $cmd = "{$pdfinfo} {$file}";
$info = `$cmd`;
$infos = explode("\n", $info);
-
- print_R($infos);exit;
+
+ foreach ($infos as $i){
+
+ if(!preg_match('/^Pages:[\s]?([0-9]+)/', $i, $matches)){
+ continue;
+ }
+ print_R($matches);exit;
+ $ret = (empty($matches[1])) ? false : $matches[1];
+ break;
+ }
break;
default :
break;
}
- return $ret;
+ return;
}
}