#!/usr/bin/env python
# -*- coding: utf-8 -*-

from __future__ import unicode_literals, absolute_import, print_function
from gm_rpcd.all import bind
import logging
import traceback
import json
from libs.es import ESPerform
from libs.cache import redis_client
from libs.tools import json_http_response
from django.shortcuts import render
from search.utils.auto_tips import get_suggest_tips


def auto_complete(request):
    try:
        """auto complate words/tags/doctors etc.

        URL:
            ~/search/auto_complete?scope=[kw]&q=双

        Return:
            {'error': 0|1, 'data': [word, word, word],}
        """

        q = request.GET.get('q', '').strip()
        lat = request.GET.get('lat', 0).strip()
        lng = request.GET.get('lng', 0).strip()

        if not q:
            return json_http_response({'error': 0, 'data': []})

        data = get_suggest_tips(q, float(lat), float(lng))

        result = {
            'error': 0,
            'data': data,
        }

        logging.info("duan add,q is:%s,result:%s" % (str(q).encode("utf-8"), str(result).encode('utf-8')))
        return json_http_response(result)
    except:
        logging.error("catch exception,err_msg:%s" % traceback.format_exc())
        return json_http_response({'error': 1, 'data': []})
