Public Member Functions | |
ilFileDataImportMail () | |
Constructor call base constructors checks if directory is writable and sets the optional obj_id. | |
getFiles () | |
getXMLFile () | |
storeUploadedFile ($a_http_post_file) | |
store uploaded file in filesystem | |
findXMLFile ($a_dir= '') | |
unzip () | |
getPath () | |
get exercise path public | |
unlinkLast () | |
__readFiles ($a_dir= '') | |
__checkReadWrite () | |
check if directory is writable overwritten method from base class private | |
Static Public Member Functions | |
_initDirectory () | |
init directory overwritten method public | |
Data Fields | |
$mail_path | |
$files | |
$xml_file |
Definition at line 35 of file class.ilFileDataImportMail.php.
ilFileDataImportMail::__checkReadWrite | ( | ) |
check if directory is writable overwritten method from base class private
Reimplemented from ilFileDataImport.
Definition at line 198 of file class.ilFileDataImportMail.php.
{ if(is_writable($this->mail_path) && is_readable($this->mail_path)) { return true; } else { $this->ilias->raiseError("Mail import directory is not readable/writable by webserver",$this->ilias->error_obj->FATAL); } }
ilFileDataImportMail::__readFiles | ( | $ | a_dir = '' |
) |
Definition at line 168 of file class.ilFileDataImportMail.php.
References $file, ilFormat::formatDate(), and getPath().
Referenced by findXMLFile(), ilFileDataImportMail(), and storeUploadedFile().
{ $a_dir = $a_dir ? $a_dir : $this->getPath(); $this->files = array(); $dp = opendir($a_dir); while($file = readdir($dp)) { if($file == "." or $file == "..") { continue; } $this->files[] = array( 'name' => $file, 'abs_path' => $a_dir."/".$file, 'size' => filesize($a_dir."/".$file), 'ctime' => ilFormat::formatDate(date('Y-m-d H:i:s',filectime($a_dir.'/'.$file)))); } closedir($dp); return true; }
ilFileDataImportMail::_initDirectory | ( | ) | [static] |
init directory overwritten method public
Reimplemented from ilFileDataImport.
Definition at line 216 of file class.ilFileDataImportMail.php.
References ilUtil::makeDir().
Referenced by ilFileDataImportMail().
{ if(!@file_exists($this->mail_path)) { ilUtil::makeDir($this->mail_path); } return true; }
ilFileDataImportMail::findXMLFile | ( | $ | a_dir = '' |
) |
Definition at line 108 of file class.ilFileDataImportMail.php.
References __readFiles(), getFiles(), and getPath().
{ $a_dir = $a_dir ? $a_dir : $this->getPath(); $this->__readFiles($a_dir); foreach($this->getFiles() as $file_data) { if(is_dir($file_data["abs_path"])) { $this->findXMLFile($file_data["abs_path"]); } if(($tmp = explode(".",$file_data["name"])) !== false) { if($tmp[count($tmp) - 1] == "xml") { return $this->xml_file = $file_data["abs_path"]; } } } return $this->xml_file; }
ilFileDataImportMail::getFiles | ( | ) |
Definition at line 67 of file class.ilFileDataImportMail.php.
Referenced by findXMLFile(), unlinkLast(), and unzip().
{
return $this->files ? $this->files : array();
}
ilFileDataImportMail::getPath | ( | ) |
get exercise path public
Reimplemented from ilFileDataImport.
Definition at line 147 of file class.ilFileDataImportMail.php.
Referenced by __readFiles(), findXMLFile(), ilFileDataImportMail(), and storeUploadedFile().
{
return $this->mail_path;
}
ilFileDataImportMail::getXMLFile | ( | ) |
Definition at line 72 of file class.ilFileDataImportMail.php.
{
return $this->xml_file;
}
ilFileDataImportMail::ilFileDataImportMail | ( | ) |
Constructor call base constructors checks if directory is writable and sets the optional obj_id.
integereger | obj_id public |
Definition at line 55 of file class.ilFileDataImportMail.php.
References __readFiles(), _initDirectory(), getPath(), and ilFileDataImport::ilFileDataImport().
{ define('MAIL_IMPORT_PATH','mail'); parent::ilFileDataImport(); $this->mail_path = parent::getPath()."/".MAIL_IMPORT_PATH; // IF DIRECTORY ISN'T CREATED CREATE IT // CALL STTIC TO AVOID OVERWRITE PROBLEMS ilFileDataImportMail::_initDirectory(); $this->__readFiles(); }
ilFileDataImportMail::storeUploadedFile | ( | $ | a_http_post_file | ) |
store uploaded file in filesystem
array | HTTP_POST_FILES public |
Definition at line 83 of file class.ilFileDataImportMail.php.
References __readFiles(), getPath(), ilUtil::moveUploadedFile(), and unlinkLast().
{ // TODO: // CHECK UPLOAD LIMIT // if(isset($a_http_post_file) && $a_http_post_file['size']) { // DELETE OLD FILES $this->unlinkLast(); // CHECK IF FILE WITH SAME NAME EXISTS ilUtil::moveUploadedFile($a_http_post_file['tmp_name'], $a_http_post_file['name'], $this->getPath().'/'.$a_http_post_file['name']); //move_uploaded_file($a_http_post_file['tmp_name'],$this->getPath().'/'.$a_http_post_file['name']); // UPDATE FILES LIST $this->__readFiles(); return true; } else { return false; } }
ilFileDataImportMail::unlinkLast | ( | ) |
Definition at line 152 of file class.ilFileDataImportMail.php.
References ilUtil::delDir(), and getFiles().
Referenced by storeUploadedFile().
{ foreach($this->getFiles() as $file_data) { if(is_dir($file_data["abs_path"])) { ilUtil::delDir($file_data["abs_path"]); } else { unlink($file_data["abs_path"]); } } return true; }
ilFileDataImportMail::unzip | ( | ) |
Definition at line 131 of file class.ilFileDataImportMail.php.
References getFiles().
{ foreach($this->getFiles() as $file_data) { ilUtil::unzip($file_data["abs_path"]); return true; } return false; }
ilFileDataImportMail::$files |
Definition at line 44 of file class.ilFileDataImportMail.php.
ilFileDataImportMail::$mail_path |
Definition at line 42 of file class.ilFileDataImportMail.php.
ilFileDataImportMail::$xml_file |
Definition at line 45 of file class.ilFileDataImportMail.php.