Sha256: ec0a7fda7367f78af931b40aa79e3092844b2e30f2686d42c3f7bdc4c47565d4
Contents?: true
Size: 1.47 KB
Versions: 1
Compression:
Stored size: 1.47 KB
Contents
module ErpApp module Desktop module SecurityManagement class BaseController < ::ErpApp::Desktop::BaseController # used for related_searchbox def search if params[:model].blank? or (params[:displayField].blank? and params[:search_fields].blank?) render :inline => '[]' else related_model = params[:model].camelize.constantize query = related_model unless params[:search_fields].blank? #related_searchbox search_fields = params[:search_fields].split(',') unless params[:query].blank? sql = '' search_fields.each_with_index do |f, i| sql += " OR " if i > 0 sql += "UPPER(#{f}) LIKE UPPER('%#{params[:query]}%')" end query = query.where(sql) end query = query.paginate(:page => page, :per_page => per_page) end total = query.count data = query.all render :inline => {:data => data, :total => total}.to_json end end protected def page offset = params[:start].to_f offset > 0 ? (offset / params[:limit].to_f).to_i + 1 : 1 end def per_page params[:limit].nil? ? 10 : params[:limit].to_i end end end #SecurityManagement end #Desktop end #ErpApp
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
erp_app-4.0.0 | app/controllers/erp_app/desktop/security_management/base_controller.rb |