0.0
No commit activity in last 3 years
No release in over 3 years
Provide non-blocking (asynchronous) alert, confirm and prompt for JavaScript applications
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
 Dependencies
 Project Readme

Common Dialogs for replacing JavaScript alert/confirm/prompt.

This provides asynchronous alternatives to alert, confirm and prompt.

Installing

If you're not using Rails, just grab the sources from lib/assets. If you're not using CoffeeScript, you can always convert the sources to JavaScript in the "Try CoffeeScript" tab in coffeescript.org.

Otherwise, just add "gem 'common-dialogs'" to your Gemfile and run bundle.

It also depends on jQuery-UI being installed. I recommend the jquery-ui-themes gem.

Then require the bundled assets after requiring jQuery UI.

For example, if you're using the jquery-ui-themes gem, your application.js would look like this:

//= require jquery
//= require jquery_ujs
//= require jquery-ui
//= require common-dialogs
CommonDialogs.require() // remove this if you don't want to add the helpers to the window object

And in application.css (see the supported themes list in the link above):

/*
= require jquery-ui/smoothness
= require common-dialogs
*/

Usage examples (in CoffeeScript for better readability)

showMessage 'Any message' # Dialog title is "Message" by default
showMessage 'Any message', title: 'Dialog Title', onClose: (-> console.log 'closed'), additionalClasses: 'success popup'
# the CSS classes in additionalClasses will be added to the dialog div
# All dialogs support those options.
showError 'An error message with alert icon'
confirmDialog 'Really remove task?', (-> console.log 'confirmed'), noAction: -> console.log 'answered no - this option is not required'
inputDialog 'What is your name?', ((name)-> console.log "Your name is #{name}"),
  initialValue: 'Optional initial value'
  required: false # true by default, which means that an empty string is not allowed by default
  cancelAction: (-> console.log 'cancel was called - this option is not required')

Custom messages and button names

Feel free to change the default messages and button names by changing the CommonDialogs.defaults object. Just inspect it (console.log(CommonDialogs.defaults)) to see what keys to change and what are their default values.

Bitdeli Badge