diff --git a/line.py b/line.py
index 5569506..34e32af 100644
--- a/line.py
+++ b/line.py
@@ -48,6 +48,18 @@ class Line(metaclass=PoolMeta):
media_id = fields.Char(string='File ID', readonly=True)
media_mime = fields.Char(string='MIME', readonly=True)
media_size = fields.Integer(string='File size', readonly=True)
+ media_image = fields.Function(fields.Binary(string='Image', readonly=True,
+ states={
+ 'invisible': ~Eval('media_mime', '').in_(['image/png', 'image/jpg', 'image/jpeg']),
+ }, depends=['media_mime']),
+ 'on_change_with_media_image')
+
+ @fields.depends('media', 'media_mime')
+ def on_change_with_media_image(self, name=True):
+ """ return binary if its a image
+ """
+ if (self.media_mime or '-').startswith('image/'):
+ return self.media
@classmethod
def _identify_file(cls, data, mime=True):
diff --git a/locale/de.po b/locale/de.po
index 052a9fb..7618e5c 100644
--- a/locale/de.po
+++ b/locale/de.po
@@ -46,3 +46,6 @@ msgctxt "field:cashbook.line,media_size:"
msgid "File size"
msgstr "Dateigröße"
+msgctxt "field:cashbook.line,media_image:"
+msgid "Image"
+msgstr "Bild"
diff --git a/view/line_form.xml b/view/line_form.xml
index 6785333..0d80ebc 100644
--- a/view/line_form.xml
+++ b/view/line_form.xml
@@ -13,10 +13,10 @@ full copyright notices and license terms. -->
-
+