we are now making AJAX requests
This commit is contained in:
parent
f7f71e9cc9
commit
b65c60ea76
|
@ -1,41 +0,0 @@
|
|||
#= require jquery
|
||||
#= require jquery_ujs
|
||||
#= require turbolinks
|
||||
#= require bootstrap
|
||||
#= require bootstrap-material-design
|
||||
#= require nprogress
|
||||
#= require nprogress-turbolinks
|
||||
#= require_tree .
|
||||
|
||||
NProgress.configure
|
||||
showSpinner: false
|
||||
|
||||
$(document).on "click", "button[name=qb-ask]", ->
|
||||
btn = $(this)
|
||||
btn.button "loading"
|
||||
promote = btn[0].dataset.promote == "true"
|
||||
$("textarea[name=qb-question]").attr "readonly", "readonly"
|
||||
anonymousQuestion = if $("input[name=qb-anonymous]")[0] != undefined
|
||||
$("input[name=qb-anonymous]")[0].checked
|
||||
else
|
||||
true
|
||||
console.log "some AJAX magic should happen here!"
|
||||
btn.button "reset"
|
||||
$("textarea[name=qb-question]").removeAttr "readonly"
|
||||
if true # data.success
|
||||
$("textarea[name=qb-question]").val ''
|
||||
if promote
|
||||
$("div#question-box").hide()
|
||||
$("div#question-box-promote").show()
|
||||
else
|
||||
$.snackbar # allahu snackbar
|
||||
content: "Successfully asked question"
|
||||
style: "snackbar"
|
||||
timeout: 5000
|
||||
|
||||
$(document).on "click", "button#create-account", ->
|
||||
Turbolinks.visit "/sign_up"
|
||||
|
||||
$(document).on "click", "button#new-question", ->
|
||||
$("div#question-box").show()
|
||||
$("div#question-box-promote").hide()
|
|
@ -0,0 +1,59 @@
|
|||
#= require jquery
|
||||
#= require jquery_ujs
|
||||
#= require turbolinks
|
||||
#= require bootstrap
|
||||
#= require bootstrap-material-design
|
||||
#= require nprogress
|
||||
#= require nprogress-turbolinks
|
||||
#= require_tree .
|
||||
|
||||
NProgress.configure
|
||||
showSpinner: false
|
||||
|
||||
$(document).on "click", "button[name=qb-ask]", ->
|
||||
btn = $(this)
|
||||
btn.button "loading"
|
||||
promote = btn[0].dataset.promote == "true"
|
||||
$("textarea[name=qb-question]").attr "readonly", "readonly"
|
||||
anonymousQuestion = if $("input[name=qb-anonymous]")[0] != undefined
|
||||
$("input[name=qb-anonymous]")[0].checked
|
||||
else
|
||||
true
|
||||
$.ajax
|
||||
url: '/ajax/ask' # TODO: find a way to use rake routes instead of hardcoding them here
|
||||
data:
|
||||
rcpt: $("input[name=qb-to]").val()
|
||||
question: $("textarea[name=qb-question]").val()
|
||||
anonymousQuestion: anonymousQuestion
|
||||
success: (data, status, jqxhr) ->
|
||||
if data.success
|
||||
$("textarea[name=qb-question]").val ''
|
||||
if promote
|
||||
$("div#question-box").hide()
|
||||
$("div#question-box-promote").show()
|
||||
$.snackbar # allahu snackbar
|
||||
content: "Successfully asked question"
|
||||
style: "snackbar"
|
||||
timeout: 5000
|
||||
else
|
||||
console.log data, status, jqxhr
|
||||
$.snackbar # allahu snackbar
|
||||
content: "An error occurred, a developer should check the console for details"
|
||||
style: "snackbar"
|
||||
timeout: 5000
|
||||
error: (jqxhr, status, error) ->
|
||||
console.log jqxhr, status, error
|
||||
$.snackbar # allahu snackbar
|
||||
content: "An error occurred, a developer should check the console for details"
|
||||
style: "snackbar"
|
||||
timeout: 5000
|
||||
complete: (jqxhr, status) ->
|
||||
btn.button "reset"
|
||||
$("textarea[name=qb-question]").removeAttr "readonly"
|
||||
|
||||
$(document).on "click", "button#create-account", ->
|
||||
Turbolinks.visit "/sign_up"
|
||||
|
||||
$(document).on "click", "button#new-question", ->
|
||||
$("div#question-box").show()
|
||||
$("div#question-box-promote").hide()
|
|
@ -10,5 +10,6 @@ body { padding-top: $navbar-height; }
|
|||
|
||||
@import "font-awesome";
|
||||
|
||||
$nprogress-color: #666; /* hail stan */
|
||||
@import 'nprogress';
|
||||
@import 'nprogress-bootstrap';
|
|
@ -24,7 +24,7 @@ Rails.application.routes.draw do
|
|||
match '/settings/profile', to: 'user#update', via: 'patch', as: :update_user_profile
|
||||
|
||||
namespace :ajax do
|
||||
match '/ask', to: 'ajax#ask', via: :post, as: :ajax_ask
|
||||
match '/ask', to: 'ajax#ask', via: :post, as: :ask
|
||||
end
|
||||
|
||||
match '/user/:username', to: 'user#show', via: 'get'
|
||||
|
|
Loading…
Reference in New Issue