X-Git-Url: http://git.roojs.org/?p=Pman.Core;a=blobdiff_plain;f=DataObjects%2FImages.php;fp=DataObjects%2FImages.php;h=3b07351bc7b8d83425da3f087a508b9614d21747;hp=10089ae68a9f3a67d6fa9bb94cfabe6175298f94;hb=77aac94570ec4160695201193ed80bc6bdb35e52;hpb=380ef8c6ff6b62df567d6671b3d695990c543092 diff --git a/DataObjects/Images.php b/DataObjects/Images.php index 10089ae6..3b07351b 100644 --- a/DataObjects/Images.php +++ b/DataObjects/Images.php @@ -841,13 +841,27 @@ class Pman_Core_DataObjects_Images extends DB_DataObject function createFromData($data) { - $this->mimetype= strtolower($this->mimetype); + if (0 === strpos($data, "data:")) { + // data:image/png;base64, + $data = substr($data,5); + $bits = explode(";", $data); + $this->mimetype = $bits[0]; + } + static $imgid = 1; + if (empty($this->filename)) { + require_once 'File/MimeType.php'; + $y = new File_MimeType(); + $this->filename = 'image-'.$imgid++.'.'.$y->toExt($this->mimetype); + } + + + $this->mimetype = strtolower($this->mimetype); $explode_mimetype = explode('/', $this->mimetype); if (array_shift($explode_mimetype) == 'image') { - $imgs = @getimagesize($data); + $imgs = @getimagesize('data://'. $data); if (!empty($imgs) && !empty($imgs[0]) && !empty($imgs[1])) { list($this->width , $this->height) = $imgs; @@ -871,7 +885,7 @@ class Pman_Core_DataObjects_Images extends DB_DataObject } file_put_contents($f, file_get_contents("data://" . $data)); - + //var_dump($f);exit; $o = clone($this); $this->filesize = filesize($f);