0){ if($u == 'M'){ //$mLimit = $mLimit * 1048576; } else if($u == 'G'){ $mLimit = $mLimit * 1024; } else if($u == 'K'){ $mLimit = $mLimit / 1024.0; } else { $mLimit = $mLimit / 1048576.0; } $mLimit = (int) $mLimit - 5; // 5 MB reserve if($mLimit<=0){ $mLimit = 1; $m = 'Increase your php memory limit, which is must too low to run VM, your current memory limit is set as '.$mL.' ='.$mLimit.'MB'; vmError($m,$m); } } } if ($mLimit < 128) { @ini_set ('memory_limit', '128M'); } if (is_file(JPATH_ROOT .'/administrator/components/com_tcpdf/install.xml')) { File::delete(JPATH_ROOT .'/administrator/components/com_tcpdf/install.xml'); } } public function install (InstallerAdapter $adapter) { $this->tcpdfInstall(); return true; } public function update (InstallerAdapter $adapter) { $this->tcpdfInstall(); } public function tcpdfInstall () { $this->path = dirname(__FILE__); // libraries auto move $src = $this->path . "/libraries"; $dst = JPATH_ROOT .'/libraries'; $this->recurse_copy ($src, $dst); $html = ' Cart '; $html .= '

TcPdf moved to the joomla libraries folder

'; $html .= "

Installation Successful.

"; echo $html; if(class_exists('vRequest')) vRequest::setVar('tcpdf_html',$html); return true; } /** * copy all $src to $dst folder and remove it * * @author Max Milbers * @param String $src path * @param String $dst path * @param String $type modulesBE, modules, plugins, languageBE, languageFE */ private function recurse_copy ($src, $dst) { static $failed = false; $dir = opendir ($src); if (is_resource ($dir)) { while (FALSE !== ($file = readdir ($dir))) { if (($file != '.') && ($file != '..')) { if (is_dir ($src . '/' . $file)) { if(!Folder::create($dst . '/' . $file)){ $app = Factory::getApplication (); $app->enqueueMessage ('Couldnt create folder ' . $dst . '/' . $file); } $this->recurse_copy ($src . '/' . $file, $dst . '/' . $file); } else { if (is_file($dst . '/' . $file)) { if (!File::delete ($dst . '/' . $file)) { $app = Factory::getApplication (); $app->enqueueMessage ('Couldnt delete ' . $dst . '/' . $file); //return false; } } if (!File::move ($src . '/' . $file, $dst . '/' . $file)) { $app = Factory::getApplication (); $app->enqueueMessage ('Couldnt move ' . $src . '/' . $file . ' to ' . $dst . '/' . $file); $failed = true; //return false; } } } } closedir ($dir); if (is_dir ($src) and !$failed) { Folder::delete ($src); } } else { $app = Factory::getApplication (); $app->enqueueMessage ('TcPdf Installer recurse_copy; Couldnt read source directory '.$dir); return false; } return true; } public function uninstall (InstallerAdapter $adapter) { if(is_dir(JPATH_ROOT .'/libraries/vendor/tecnickcom/tcpdf')){ Folder::delete(JPATH_ROOT .'/libraries/vendor/tecnickcom/tcpdf'); } if(is_file(JPATH_ROOT .'/libraries/src/Document/PdfDocument.php')){ File::delete(JPATH_ROOT .'/libraries/src/Document/PdfDocument.php'); } if(is_dir(JPATH_ROOT .'/administrator/components/com_tcpdf')){ Folder::delete(JPATH_ROOT .'/administrator/components/com_tcpdf'); } $html = '

TcPdf removed from joomla libraries folder

'; $html .= "

Uninstall Successful.

"; echo $html; return true; } public function postflight (string $type, InstallerAdapter $adapter) { if(is_dir(JPATH_ROOT .'/administrator/components/com_tcpdf/libraries')){ Folder::delete(JPATH_ROOT .'/administrator/components/com_tcpdf/libraries'); } if(is_dir(JPATH_ROOT .'/libraries/joomla/pdf')){ Folder::delete(JPATH_ROOT .'/libraries/joomla/pdf'); } if(is_dir(JPATH_ROOT .'/libraries/tcpdf')){ Folder::delete(JPATH_ROOT .'/libraries/tcpdf'); } return true; } } // pure php no tag