Module: Glib::Json::Libs::ClassMethods
- Defined in:
- app/controllers/concerns/glib/json/libs.rb
Instance Method Summary collapse
- #json_libs_force_json_ui ⇒ Object
- #json_libs_init(options) ⇒ Object
- #json_libs_rescue_404(preview_mode: false) ⇒ Object
-
#json_libs_rescue_500(preview_mode: false) ⇒ Object
Call this before other rescues.
- #json_libs_rescue_csrf ⇒ Object
- #json_libs_set_locale ⇒ Object
- #json_libs_skip_json_ui(options = {}) ⇒ Object
Instance Method Details
#json_libs_force_json_ui ⇒ Object
268 269 270 |
# File 'app/controllers/concerns/glib/json/libs.rb', line 268 def json_libs_force_json_ui before_action :glib_force_json_ui end |
#json_libs_init(options) ⇒ Object
239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 |
# File 'app/controllers/concerns/glib/json/libs.rb', line 239 def json_libs_init() include Glib::Json::Transformation include Glib::Json::Validation include Glib::Json::Ui include Glib::Json::Traversal include Glib::Json::NewDynamicText before_action do __json_ui_start() end # Note that after_action gets executed in reverse after_action do __json_ui_commit() end after_action :__json_transformation_commit after_action :__json_validate_perform after_action :__json_traversal_perform after_action :__json_traversal_register_dynamic_text end |
#json_libs_rescue_404(preview_mode: false) ⇒ Object
318 319 320 321 322 |
# File 'app/controllers/concerns/glib/json/libs.rb', line 318 def json_libs_rescue_404(preview_mode: false) rescue_from ActiveRecord::RecordNotFound do |exception| glib_json_handle_404(exception, preview_mode) end end |
#json_libs_rescue_500(preview_mode: false) ⇒ Object
Call this before other rescues. Later rescue_from statements will take precedence, so more specific rescues have to be declared later.
312 313 314 315 316 |
# File 'app/controllers/concerns/glib/json/libs.rb', line 312 def json_libs_rescue_500(preview_mode: false) rescue_from StandardError do |exception| glib_json_handle_500(exception, preview_mode) end end |
#json_libs_rescue_csrf ⇒ Object
281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 |
# File 'app/controllers/concerns/glib/json/libs.rb', line 281 def json_libs_rescue_csrf rescue_from ActionController::InvalidAuthenticityToken do |exception| # sign_out(:user) # respond_to do |format| # format.json do # render json: { # onResponse: { # action: 'windows/open-v1', # url: url # } # } # end # end respond_to do |format| format.html do redirect_to sign_in_url end format.json do render json: { glib_json_dialog_mode? ? :onLoad : :onResponse => __glib_error_dialog( 'Your session has expired', 'Please refresh the page and retry.') } end end end end |
#json_libs_set_locale ⇒ Object
272 273 274 275 276 277 278 279 |
# File 'app/controllers/concerns/glib/json/libs.rb', line 272 def json_libs_set_locale before_action do # Need to explicitly fallback to EN I18n.locale = params[:_locale] || :en rescue I18n.locale = :en end end |
#json_libs_skip_json_ui(options = {}) ⇒ Object
262 263 264 265 266 |
# File 'app/controllers/concerns/glib/json/libs.rb', line 262 def json_libs_skip_json_ui( = {}) prepend_before_action do params[:_skip_render] = 'true' end end |