/**
  * Test split image name.
  */
 public function testSplitImagename()
 {
     $info = ZMImageInfo::splitImageName('/foo/bar/image.png');
     if ($this->assertTrue(is_array($info))) {
         if ($this->assertEquals(3, count($info))) {
             $this->assertEquals('/foo/bar/', $info[0]);
             $this->assertEquals('.png', $info[1]);
             $this->assertEquals('/foo/bar/image', $info[2]);
         }
     }
 }
Beispiel #2
0
 /**
  * Look up additional product images.
  *
  * @param string image The image to look up.
  * @return array An array of <code>ZMImageInfo</code> instances.
  */
 public static function getAdditionalImages($image)
 {
     $comp = ZMImageInfo::splitImageName($image);
     $subdir = $comp[0];
     $ext = $comp[1];
     $realImageBase = basename($comp[2]);
     // directory to scan
     $dirname = Runtime::getContainer()->getParameter('zencart.root_dir') . '/images/' . $subdir;
     $imageList = array();
     if (is_dir($dirname) && ($dir = dir($dirname))) {
         while ($file = $dir->read()) {
             if (!is_dir($dirname . $file)) {
                 if (Toolbox::endsWith($file, $ext)) {
                     if (1 == preg_match("/" . $realImageBase . "/i", $file)) {
                         if ($file != basename($image)) {
                             if ($realImageBase . preg_replace('/' . $realImageBase . '/', '', $file) == $file) {
                                 array_push($imageList, $file);
                             }
                         }
                     }
                 }
             }
         }
         $dir->close();
         sort($imageList);
     }
     // create ZMImageInfo list...
     $imageInfoList = array();
     foreach ($imageList as $aimg) {
         $imageInfo = Beans::getBean('ZMImageInfo');
         $imageInfo->setDefaultImage($subdir . $aimg);
         $imageInfoList[] = $imageInfo;
     }
     return $imageInfoList;
 }
Beispiel #3
0
 /**
  * Get additional product images.
  *
  * @return array List of optional <code>ZMImageInfo</code> instances.
  */
 public function getAdditionalImages()
 {
     return \ZMImageInfo::getAdditionalImages($this->image);
 }
Beispiel #4
0
 /**
  * Get the parameter formatted as <code>key="value" </code>.
  *
  * @return string HTML formatted parameter.
  */
 public function getFormattedParameter()
 {
     return $this->formattedParameter . parent::getFormattedParameter();
 }