Ejemplo n.º 1
0
 public function photoAction()
 {
     $this->_helper->viewRenderer->setNoRender(true);
     $uri = $this->getRequest()->getRequestUri();
     $regex = '#^(.+)/photo/(.+).png$#i';
     if (preg_match($regex, $uri, $v)) {
         $de = str_split($this->_params['user']);
         $file = SYS_ENTRY . '/data/user/' . $de[0] . '/' . $de[1] . '/' . $de[2];
         $file .= '/' . $this->_params['user'] . '/' . $v[2] . '.png';
         if (!file_exists($file)) {
             $file = SYS_ENTRY . '/data/user/' . $v[2] . '.png';
             if (!file_exists($file)) {
                 die;
             }
         }
     } else {
         die;
     }
     ob_end_clean();
     $ims = getimagesize($file);
     header("Cache-Control: private");
     header("Pragma: cache");
     header("Expires: " . gmdate("D, d M Y H:i:s", time() + 31536000) . " GMT");
     header("Content-type: image/png");
     $validator = new Zend_Validate_File_IsImage();
     if ($validator->isValid($file, array('type' => 'image/png'))) {
         header("Content-Disposition: inline; filename=photo");
     } else {
         header('Content-Disposition: attachment; filename=photo');
     }
     header("Content-Length: " . filesize($file));
     $fp = fopen($file, "rb");
     fpassthru($fp);
     fclose($fp);
     die;
 }
Ejemplo n.º 2
0
 public function testOptionsAtConstructor()
 {
     if (!extension_loaded('fileinfo')) {
         $this->markTestSkipped('This PHP Version has no finfo installed');
     }
     $validator = new Zend_Validate_File_IsImage(array('image/gif', 'image/jpg', 'magicfile' => dirname(__FILE__) . '/_files/magic.mime', 'headerCheck' => true));
     $this->assertEquals(dirname(__FILE__) . '/_files/magic.mime', $validator->getMagicFile());
     $this->assertTrue($validator->getHeaderCheck());
     $this->assertEquals('image/gif,image/jpg', $validator->getMimeType());
 }
Ejemplo n.º 3
0
 /**
  *
  * @param string $mime_type
  * @param type $messages_prefixed
  * @return \Zend_Validate_File_IsImage 
  */
 protected function _getValidateIsImage($mime_type = array(), $messages_prefixed = "")
 {
     if (empty($mime_type)) {
         $mime_type = array('image/gif', 'image/jpeg', 'image/pjpeg', 'image/png');
     }
     $image = new Zend_Validate_File_IsImage($mime_type);
     $image->setMessage(sprintf($this->_translate('ERROR_IMAGE_FALSE_TYPE'), $this->_translate($messages_prefixed)), Zend_Validate_File_IsImage::FALSE_TYPE);
     return $image;
 }
Ejemplo n.º 4
0
 public function testOptionsAtConstructor()
 {
     $validator = new Zend_Validate_File_IsImage(array('image/gif', 'image/jpg', 'magicfile' => __FILE__, 'headerCheck' => true));
     $this->assertEquals(__FILE__, $validator->getMagicFile());
     $this->assertTrue($validator->getHeaderCheck());
     $this->assertEquals('image/gif,image/jpg', $validator->getMimeType());
 }
Ejemplo n.º 5
0
 /**
  * Ensures that addMimeType() returns expected value
  *
  * @return void
  */
 public function testAddMimeType()
 {
     $validator = new Zend_Validate_File_IsImage('image/gif');
     $validator->addMimeType('text');
     $this->assertEquals('image/gif,text', $validator->getMimeType());
     $this->assertEquals(array('image/gif', 'text'), $validator->getMimeType(true));
     $validator->addMimeType('jpg, to');
     $this->assertEquals('image/gif,text,jpg,to', $validator->getMimeType());
     $this->assertEquals(array('image/gif', 'text', 'jpg', 'to'), $validator->getMimeType(true));
     $validator->addMimeType(array('zip', 'ti'));
     $this->assertEquals('image/gif,text,jpg,to,zip,ti', $validator->getMimeType());
     $this->assertEquals(array('image/gif', 'text', 'jpg', 'to', 'zip', 'ti'), $validator->getMimeType(true));
     $validator->addMimeType('');
     $this->assertEquals('image/gif,text,jpg,to,zip,ti', $validator->getMimeType());
     $this->assertEquals(array('image/gif', 'text', 'jpg', 'to', 'zip', 'ti'), $validator->getMimeType(true));
 }