z_media_tag (zotonic_core v1.0.0-rc.10)

Generate media urls and html for viewing media, based on the filename, size and optional filters. Does not generate media previews itself, this is done when fetching the image.

Typical urls are like: /image/2007/03/31/wedding.jpg(300x300)(crop-center)(a3ab6605e5c8ce801ac77eb76289ac12).jpg /media/inline/2007/03/31/wedding.jpg /media/attachment/2007/03/31/wedding.jpg

Link to this section Summary

Functions

Generate a 'data:' url for the given image.
Called from template, render the media tag for some resource/medium
Called from template, render the media url for some resource/medium
Called from template, render the media viewer for some resource/medium
Generate a HTML image tag for the image with the filename and options. The medium _must_ be in a format for which we can generate a preview. Note that this will never generate video or audio.
Translate an url of the format "image.jpg(300x300)(crop-center)(checksum).jpg" to parts
Generate the url for the image with the filename and options
Generate a html fragment for displaying a medium. This can generate audio or video player html.

Link to this section Functions

Link to this function

props2url(Props, Context)

Link to this function

scomp_data_url(IdOrName, Options, Context)

Generate a 'data:' url for the given image.
Link to this function

scomp_tag(IdOrName, Options, Context)

Called from template, render the media tag for some resource/medium
Link to this function

scomp_url(IdOrName, Options, Context)

Called from template, render the media url for some resource/medium
Link to this function

scomp_viewer(IdOrName, Options, Context)

Called from template, render the media viewer for some resource/medium
Link to this function

tag(MediaReference, Options, Context)

-spec tag(MediaReference, Options :: list(), z:context()) -> {ok, iodata()}
       when
           MediaReference ::
               undefined |
               m_rsc:resource_id() |
               #rsc_list{} |
               proplists:list() |
               file:filename_all().
Generate a HTML image tag for the image with the filename and options. The medium _must_ be in a format for which we can generate a preview. Note that this will never generate video or audio.
Link to this function

url2props(Url, Context)

-spec url2props(binary() | string(), z:context()) ->
             {ok,
              {FilePath :: string(),
               Props :: list(),
               Checksum :: string(),
               ChecksumBaseString :: string()}} |
             {error, no_lparen | checksum_invalid | extension_invalid | badarg}.
Translate an url of the format "image.jpg(300x300)(crop-center)(checksum).jpg" to parts
Link to this function

url(Name, Options, Context)

Generate the url for the image with the filename and options
Link to this function

viewer(MediaReference, Options, Context)

-spec viewer(MediaReference, z_media_identify:media_info(), z:context()) -> {ok, iodata()}
          when
              MediaReference ::
                  undefined |
                  m_rsc:resource_id() |
                  z_media_identify:media_info() |
                  #rsc_list{} |
                  proplists:proplist() |
                  file:filename_all().
Generate a html fragment for displaying a medium. This can generate audio or video player html.