# -*- encoding : utf-8 -*-
require 'pixways'
require 'json'

class ReturnPpController < ApplicationController

  skip_before_action :login_required

  def create
    logger.info "logi = #{params[:login]} keyw = #{params[:keyw]}"
    logi = params[:login]
    page = params[:page].to_i
    message = {}
    message["result"] = 0
    if logi == "pat"
      keyw = params["keyw"]

      with = {}
      current_user = User.find_by_login('pat')
      with[:provider_id] = current_user.providers.collect{|e| e.id}
      cearch = {}

      sort = "by_reception_date"
      cearch[:conditions] = {}
      with[:content_error]  = 0
      cearch[:with] = with
      # cearch[:retry_stale] = true
      keywords = keyw
      medias = Image.instance_eval(sort).search(keywords, cearch)
      message["result"] = medias.total_entries
      message["photos"] = {}
      for i in 0..19
        message["photos"][i] = {'id' => medias[i].id, 'ratio' => medias[i].ratio, 'vignette' => medias[i].thumb_location, 'fic' => medias[i].original_filename,
                                'preview' => medias[i].medium_location, 'date_pp' => localise(medias[i].reception_date), 'date_ph' => localise(medias[i].date_created),
                                'titre' => medias[i].headline, 'leg' => medias[i].subject, 'mots' => medias[i].description, 'credit' => medias[i].normalized_credit}
      end
    end

    json_message = message.to_json
    respond_to do |format|
      format.json { render json: json_message }
    end
  end

  private

  def localise(dat)
    I18n.l(dat) unless dat.blank?
  end

end
