48 lines
1.3 KiB
Python
48 lines
1.3 KiB
Python
# -*- coding: utf-8 -*-
|
|
# vi:si:et:sw=4:sts=4:ts=4
|
|
from __future__ import division
|
|
|
|
import re
|
|
|
|
from ox.django.shortcuts import render_to_json_response, json_response
|
|
import ox.web.imdb
|
|
|
|
from api.actions import actions
|
|
import models
|
|
|
|
def getId(request, data):
|
|
response = json_response()
|
|
movie = models.find(data)
|
|
if movie:
|
|
response['data'] = movie.json()
|
|
else:
|
|
response['status'] = {'text':'not found', 'code': 404}
|
|
return render_to_json_response(response)
|
|
actions.register(getId)
|
|
|
|
def getIds(request, data):
|
|
response = json_response()
|
|
response['data']['items'] = models.Match.find(data)
|
|
return render_to_json_response(response)
|
|
actions.register(getIds)
|
|
|
|
def getData(request, data):
|
|
response = json_response()
|
|
id = data['id']
|
|
if len(id) == 7:
|
|
i, created = models.Imdb.objects.get_or_create(imdb=id)
|
|
if created:
|
|
i.update()
|
|
data = i.data(request)
|
|
response['data'] = data
|
|
else:
|
|
response['status'] = {'text':'not found', 'code': 404}
|
|
|
|
return render_to_json_response(response)
|
|
actions.register(getData)
|
|
|
|
def parsePath(request, data):
|
|
path = data['path']
|
|
response = json_response(ox.parse_movie_path(path))
|
|
return render_to_json_response(response)
|
|
actions.register(parsePath)
|