requestizer

0.9.3 • Public • Published

requestizer

By Oceanhouse21

Build Status

requestizer

requestizer is a leightweight tool enabling your oganisation to receive contact requests via email, built upon express.

Features:

DEPENDENCIES

USAGE

Install, configure and deploy on heroku:

git clone https://github.com/oceanhouse21/requestizer
heroku create
git push heroku master

Copy and paste the returned Heroku URI. Add Heroku config variables:

heroku config:set SENDGRID_USERNAME="your_username"
heroku config:set SENDGRID_PASSWORD="your_password"
heroku config:set FROM_EMAIL="from@gmail.com"
heroku config:set TO_EMAIL="to@gmail.com"
# If using custom templates 
heroku config:set TEMPLATE_URL="http://s3.yourtempalte.de/config.json"

Finally embed this script in any of your html files and change the heroku link.

<form id="requestizerForm" action="javascript:submit();"> 
  <label for="email">Email:</label>
  <input type="text" name="email">
  <label for="message">Message:</label>
  <input type="text" name="message">
  // If using custom templates, otherwise skip next line
  <input type="hidden" name="template" value="starter_template">
  <button id="submitForm">Submit</button>
</form>
 
<script src="http://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js"></script>
<script type="text/javascript">
  function submit () {
    var formData = JSON.stringify($("#requestizerForm").serializeArray());
    $.ajax({
      type: "POST",
      url: "http://yourapp.herokuapp.com/request",
      contentType: "application/json",
      data: formData,
      success: function(){
        window.alert("Thank you for your request!");
      },
      error: function(){
        window.alert("Sorry, something went wrong ;-(\nPlease try again.");
      }
    });
    return false;
  };
</script> 

CUSTOM TEMPLATES

Custom templates are defined in an additional JSON file that may be placed anywhere, e.g. on S3 or in a public git repo, gists do not work. Example configuration (see also config_sample.json](https://github.com/oceanhouse21/requestizer/blob/master/config_sample.json)):

// config.json
{
  "starter_template": {
    "request": {
      "from": "please-change-me@gmail.com",
      "to": "please-change-me@gmail.com",
      "subject": "New request",
      "html": "<h1>Yo, new request</h1>",
      "text": "Yo, new request",
      "type": "request"
    },
    "thanks": {
      "from": "please-change-me@gmail.com",
      "subject": "Thank you",
      "html": "<h1>Thank you!</h1>",
      "text": "Thank you!",
      "type": "thanks"
    }
  }
}

Make sure to configure custom templates on Heroku and in the HTML form field.

LICENSE

MIT License. Copyright 2014-2015 Oceanhouse21 GmbH. http://www.oceanhouse21.com

You are not granted rights or licenses to the trademarks of Oceanhouse21 GmbH, including without limitation the requestizer name.

Versions

Current Tags

  • Version
    Downloads (Last 7 Days)
    • Tag
  • 0.9.3
    0
    • latest

Version History

  • Version
    Downloads (Last 7 Days)
    • Published
  • 0.9.3
    0
  • 0.9.2
    0
  • 0.9.1
    0
  • 0.9.0
    0

Package Sidebar

Install

npm i requestizer

Weekly Downloads

0

Version

0.9.3

License

MIT

Last publish

Collaborators

  • oceanhouse21