Pixpalace::Engine.routes.draw do
  root to: 'home#index'

  match '/search', to: 'application#search', via: [:get, :post], as: :search

  resources :title_provider_group_names do
    member do
      get :providers
      post :duplicate
    end
  end
  resources :title_provider_groups
  resources :providers do
    member do
      patch :list_contact
    end
    get :logo
    delete :logo, to: 'providers#delete_logo'
    get :formu
    delete :formu, to: 'providers#delete_formu'
    get :pdf
    delete :pdf, to: 'providers#delete_pdf'
  end
  resources :rights do
    collection do
      post :update_collection
    end
  end
  resources :users do
    collection do
      post :import
    end
    member do
      get :light_box_images
      get :delete
    end
  end
  resources :titles do
    member do
      get :delete
    end
  end
  resources :servers
  resource :parameter
  resources :closings

  resources :settings
  get :load_server_resource_by_title, controller: "titles"
  get :load_provider_by_pixtech_id, controller: "providers"

  # TODO Issue #9447: Temporarily deactivate new user creation
  with_options(except: :new) do |opt|
    opt.resources :clients do
      member do
        get :delete
      end
    end
  end

  # agency billing
  resources :billing_companies do
    collection do
      get :search
    end
    member do
      post :sync
    end
  end
  resources :images, only: [:index, :create] do
    collection do
      get :search
    end
  end
  get '/images/new', to: 'images#new_blank', as: 'new_blank_images'
  resources :payments do
    member do
      post :sync
    end
  end
  resources :right_owners do
    resources :images
    member do
      post :sync
    end
  end
  resources :billings do
    collection do
      post :credit_note
      post :duplicate
      get :print
    end
    member do
      post :sync
    end
  end
  get '/billings/logo/:logo_id', to: 'billings#logo', as: 'logo_billings'
  resources :statements do
    collection do
      post :update_collection
      get :pay
      get :print
      get :mails
    end
    member do
      get :simulation
      get :mail
    end
  end
  resources :billing_settings do
    member do
      post :sync
    end
  end

  # photographer billing
  resources :photographer_billing_companies
  resources :photographer_payments
  resources :photographer_billings do
    member do
      get :pdf
    end
    collection do
      post :credit_note
      post :duplicate
      get :print
    end
  end
  resource :photographer_billing_setting
end
