Example #1
0
 function getValue($args = null)
 {
     $value = parent::getValue($args);
     if (!empty($value)) {
         $date = $value['date'];
         if (!empty($value['time'])) {
             $date .= " {$value['time']}";
         }
         $timezone = new \DateTimeZone("Europe/Stockholm");
         $value = new \DateTime($date, $timezone);
     }
     return $value;
 }
Example #2
0
 function getValue($args = null)
 {
     $default = array('size' => 'default', 'fit' => true, 'constrain' => false, 'raw' => false, 'color' => false);
     $args = wp_parse_args($args, $default);
     $value = parent::getValue($args);
     // Value has attachment
     if (!empty($value->id)) {
         $source = get_attached_file($value->id);
         if (empty($source)) {
             return false;
         }
         if ($args['raw']) {
             return wp_get_attachment_url($value->id);
         }
         if ($args['color']) {
             return $this->image->getColor($source);
         }
         $base = wp_upload_dir();
         $extension = $this->image->getExtension($source);
         $path = "{$base['basedir']}/generated/{$this->postId}/{$this->id}/{$args['size']}.{$extension}";
         if (!file_exists($path)) {
             if (array_key_exists($args['size'], $this->definition['size'])) {
                 $size = $this->definition['size'][$args['size']];
             } else {
                 $size = $args['size'];
             }
             $size = explode('x', $size);
             if ($args['constrain']) {
                 if ($args['constrain'] == 'width') {
                     $size[1] = null;
                 } else {
                     if ($args['constrain'] == 'height') {
                         $size[0] = null;
                     }
                 }
             }
             $this->image->create($source, $path, $size[0], $size[1], $args['fit']);
         }
         return "{$base['baseurl']}/generated/{$this->postId}/{$this->id}/{$args['size']}.{$extension}";
     }
     return $value;
 }