class Admin::MemberlogsController < OrbitMemberController before_action :set_memberlog, only: [:show, :edit , :update, :destroy] before_action :set_plugin layout "member_plugin" include Admin::MemberlogsHelper def index @dayoffs = Dayoff.all @now = Time.now.to_date # @ch = ["一","二","三","四","五","六","日"] @memberlogs = MemberLog.all.order_by(:created_at=>'desc').page(params[:page]).per(10) end def new @member = MemberProfile.find_by(:uid=>params['uid']) rescue nil @memberlog = MemberLog.new end def create # render :text =>"#{params[:member_log]}" memberlog = MemberLog.create(memberlog_params) redirect_to params[:referer_url] end def show @member = MemberProfile.find_by(:uid=>params['uid']) rescue nil render :layout => false end def edit end def update @memberlog.update_attributes(memberlog_params) @memberlog.save redirect_to params[:referer_url] end def destroy @memberlog.destroy redirect_to admin_memberlogs_path(:page => params[:page]) end def toggle_hide if params[:ids] @projects = Member.any_in(_id: params[:ids]) @projects.each do |project| project.is_hidden = params[:disable] project.save end end render json: {"success"=>true} end private def memberlog_params p = params.require(:member_log).permit! p[:checkout] = Time.now if p[:finish].present? p end def set_memberlog path = request.path.split('/') if path.last.include? '-' uid = path[-1].split("-").last uid = uid.split("?").first else uid = path[-2].split("-").last uid = uid.split("?").first end @memberlog = MemberLog.find_by(:uid => uid) rescue MemberLog.find(params[:id]) end def set_plugin @plugin = OrbitApp::Plugin::Registration.all.select{|plugin| plugin.app_name.eql? 'MemberLog'}.first end end