# -*- encoding : utf-8 -*- class Admin::PPaymentsController < ApplicationController layout "admin" before_filter :auth_admin before_filter :admin_space def admin_space @admin_space = "payments" end def index @p_payments = PPayment.includes(:p_payment_type) params[:p_payment_type_ids] = params[:p_payment_type_ids] || [] @p_payments = @p_payments.where(:p_payment_type_id => params[:p_payment_type_ids]) if params[:p_payment_type_ids].size > 0 date_regex = /^(0[1-9]|[12][0-9]|3[01])[\/](0[1-9]|1[012])[\/](19|20)\d\d$/i params[:start] = Date.today.beginning_of_month.strftime('%d/%m/%Y') if !params[:start] if params[:start] and params[:start] =~ date_regex @start = Date.parse(params[:start]).beginning_of_day params[:start]= @start.strftime('%d/%m/%Y') else @start = nil end if true params[:stop] = Date.today.end_of_month.strftime('%d/%m/%Y') if !params[:stop] if params[:stop].to_s != "" # and params[:stop] =~ date_regex @stop = Date.parse(params[:stop]).end_of_day params[:stop]= @stop.strftime('%d/%m/%Y') else @stop = nil end end if params[:amount_min].to_s != "" @p_payments = @p_payments.where("amount >= ?", params[:amount_min]) end if params[:amount_max].to_s != "" @p_payments = @p_payments.where("amount <= ?", params[:amount_max]) end @p_payments = @p_payments.where("p_payments.created_at >= ?", @start) if @start @p_payments = @p_payments.where("p_payments.created_at <= ?", @stop.end_of_day) if @stop @p_payments = sort_by_sorting(@p_payments, "created_at DESC") per_page = (params[:search][:per_page] and params[:search][:per_page] != "") ? params[:search][:per_page] : 50 page = (params[:search][:page] and params[:search][:page] != "") ? params[:search][:page] : 1 @p_payments = @p_payments.page(page).per(per_page) end def show @p_payment = PPayment.find(params[:id]) end def new @p_payment = PPayment.new(:p_payment_type_id => 1) end def edit @p_payment = PPayment.find(params[:id]) end def create @p_payment = PPayment.new(params.require(:p_payment).permit!) if @p_payment.save @p_payment = PPayment.find(@p_payment.id) @p_customer = @p_payment.p_customer else render action: "new" end end def update @p_payment = PPayment.find(params[:id]) if @p_payment.update_attributes(params.require(:p_payment).permit!) @p_payments = PPayment.order("created_at ASC").all else render action: "edit" end end def destroy @p_payment = PPayment.find(params[:id]) @p_payment.destroy end end