summaryrefslogtreecommitdiff
path: root/indoteknik_api/controllers/api_v1/content.py
blob: 3d18ac13434100107cb9e7da6452b6984ad5cc33 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
from .. import controller
from odoo import http
from odoo.http import request


class WebsiteContent(controller.Controller):
    prefix = '/api/v1/'

    @http.route(prefix + 'video_content', auth='public', methods=['GET', 'OPTIONS'])
    def get_video_content(self, **kw):
        if not self.authenticate():
            return self.response(code=401, description='Unauthorized')
        # base_url = request.env['ir.config_parameter'].get_param('web.base.url')
        query = [('status', '=', 'tayang'), ('slide_type', '=', 'video')]
        limit = int(kw.get('limit', 0))
        offset = int(kw.get('offset', 0))
        videos = request.env['website.content'].search(query, limit=limit, offset=offset, order='sequence')
        data = []
        for video in videos:
            data.append({
                'id': video.id,
                'channel_name': video.channel_id.name,
                'sequence': video.sequence,
                'slide_type': video.slide_type,
                'name': video.name,
                'url': video.url
            })
        return self.response(data)