Exemplo n.º 1
0
        uris = []
        info = dict(
            container=file.container,
            type=file.type,
            display_name=file.display_name,
            created=file.created_on.isoformat(),
            url=url_for_media(media, qualified=True),
            uris=uris,
        )
        for uri in file.get_uris():
            uris.append({
                'scheme': uri.scheme,
                'uri': str(uri),
                'server': uri.server_uri,
                'file': uri.file_uri,
            })
        return info


#XXX: Dirty hack to set the actual strings for filetypes, in our docstrings,
#     based on the canonical definitions in the filetypes module.
from mediacore.lib.filetypes import registered_media_types, AUDIO, VIDEO
_types_list = "'%s'" % ("', '".join(id
                                    for id, name in registered_media_types()))
MediaController._file_info.im_func.__doc__ = \
        MediaController._file_info.im_func.__doc__ % _types_list
MediaController._info.im_func.__doc__ = \
        MediaController._info.im_func.__doc__ % (AUDIO, VIDEO)
MediaController.index.im_func.__doc__ = \
        MediaController.index.im_func.__doc__ % (AUDIO, VIDEO)
Exemplo n.º 2
0
        """
        uris = []
        info = dict(
            container = file.container,
            type = file.type,
            display_name = file.display_name,
            created = file.created_on.isoformat(),
            url = url_for_media(media, qualified=True),
            uris = uris,
        )
        for uri in file.get_uris():
            uris.append({
                'scheme': uri.scheme,
                'uri': str(uri),
                'server': uri.server_uri,
                'file': uri.file_uri,
            })
        return info

#XXX: Dirty hack to set the actual strings for filetypes, in our docstrings,
#     based on the canonical definitions in the filetypes module.
from mediacore.lib.filetypes import registered_media_types, AUDIO, VIDEO
_types_list = "'%s'" % ("', '".join(id for id, name in registered_media_types()))
MediaController._file_info.im_func.__doc__ = \
        MediaController._file_info.im_func.__doc__ % _types_list
MediaController._info.im_func.__doc__ = \
        MediaController._info.im_func.__doc__ % (AUDIO, VIDEO)
MediaController.index.im_func.__doc__ = \
        MediaController.index.im_func.__doc__ % (AUDIO, VIDEO)
Exemplo n.º 3
0
                    uri (unicode)
                        The full URI string (minus scheme) built from the
                        server_uri and file_uri.
                        See :attr:`mediacore.lib.uri.StorageUri.__str__`.
                        (e.g. 'mediacorecommunity.org/docs' in the URI
                        'http://mediacorecommunity.org/docs')

        """
        uris = []
        info = dict(
            container=file.container,
            type=file.type,
            display_name=file.display_name,
            created=file.created_on.isoformat(),
            url=helpers.url_for(controller="/media", action="view", slug=media.slug, qualified=True),
            uris=uris,
        )
        for uri in file.get_uris():
            uris.append({"scheme": uri.scheme, "uri": str(uri), "server": uri.server_uri, "file": uri.file_uri})
        return info


# XXX: Dirty hack to set the actual strings for filetypes, in our docstrings,
#     based on the canonical definitions in the filetypes module.
from mediacore.lib.filetypes import registered_media_types, AUDIO, VIDEO

_types_list = "'%s'" % ("', '".join(id for id, name in registered_media_types()))
MediaController._file_info.im_func.__doc__ = MediaController._file_info.im_func.__doc__ % _types_list
MediaController._info.im_func.__doc__ = MediaController._info.im_func.__doc__ % (AUDIO, VIDEO)
MediaController.index.im_func.__doc__ = MediaController.index.im_func.__doc__ % (AUDIO, VIDEO)
Exemplo n.º 4
0
                )

class AddFileForm(ListForm):
    template = 'admin/media/file-add-form.html'
    id = 'add-file-form'
    submit_text = None
    fields = [
        FileField('file', label_text=N_('Select an encoded video or audio file on your computer'), validator=FieldStorageUploadConverter(not_empty=False, label_text=N_('Upload'))),
        SubmitButton('add_url', default=N_('Add URL'), named_button=True, css_class='btn grey btn-add-url f-rgt'),
        TextField('url', validator=URL, suppress_label=True, attrs=lambda: {'title': _('YouTube, Vimeo, Google Video, Amazon S3 or any other link')}, maxlength=255),
    ]

    def post_init(self, *args, **kwargs):
        events.Admin.AddFileForm(self)

file_type_options = lambda: registered_media_types()
file_types = lambda: (id for id, name in registered_media_types())
file_type_validator = OneOfGenerator(file_types, if_missing=None)

class EditFileForm(ListForm):
    template = 'admin/media/file-edit-form.html'
    submit_text = None
    _name = 'fileeditform'
    params = ['file']

    class fields(WidgetsList):
        file_id = TextField(validator=Int())
        file_type = SingleSelectField(validator=file_type_validator, options=file_type_options, attrs={'id': None, 'autocomplete': 'off'})
        duration = TextField(validator=DurationValidator, attrs={'id': None, 'autocomplete': 'off'})
        width_height = TextField(validator=WXHValidator, attrs={'id': None, 'autocomplete': 'off'})
        bitrate = TextField(validator=Int, attrs={'id': None, 'autocomplete': 'off'})
Exemplo n.º 5
0
        TextField(
            'url',
            validator=URL,
            suppress_label=True,
            attrs=lambda: {
                'title':
                _('YouTube, Vimeo, Google Video, Amazon S3 or any other link')
            },
            maxlength=255),
    ]

    def post_init(self, *args, **kwargs):
        events.Admin.AddFileForm(self)


file_type_options = lambda: registered_media_types()
file_types = lambda: (id for id, name in registered_media_types())
file_type_validator = OneOfGenerator(file_types, if_missing=None)


class EditFileForm(ListForm):
    template = 'admin/media/file-edit-form.html'
    submit_text = None
    _name = 'fileeditform'
    params = ['file']

    class fields(WidgetsList):
        file_id = TextField(validator=Int())
        file_type = SingleSelectField(validator=file_type_validator,
                                      options=file_type_options,
                                      attrs={