Sha256: b4686874bb6d45b2e7e3c3c52691412be8d578bc889cde3839f5930eccf0f37e
Contents?: true
Size: 1.17 KB
Versions: 6
Compression:
Stored size: 1.17 KB
Contents
module LadyJosephine class EditorController < ::ApplicationController def ping if @resource = find_resource result = {ping: {}} if @resource.ping(current_user, params[:update] == "force") @resource.save result[:ping][:state] = "OK" else result[:ping][:state] = "CONFLICT" end result[:ping][:ping_date] = @resource.lady_josephine_ping_date result[:ping][:user_id] = @resource.lady_josephine_ping_user.try :id result[:ping][:user_name] = @resource.lady_josephine_ping_user.try :name render json: result end end def version if @resource = find_resource render json: @resource end end private def find_resource resource_class = whitelisted_class(params[:resource]) if (resource_class && @resource = resource_class.where(lady_josephine_server_uuid: params[:id]).first) @resource else render nothing: true, status: 404 nil end end def whitelisted_class(resource) resource.capitalize.constantize if LadyJosephine::Whitelist.instance.is_whitelisted?(resource) end end end
Version data entries
6 entries across 6 versions & 1 rubygems