0.3.0 • Published 11 years ago

vcardjs v0.3.0

Weekly downloads
4
License
-
Repository
github
Last release
11 years ago

#+TITLE: vCardJS - a vCard 4.0 implementation in JavaScript.

** Goals

  • complete vCard 4.0 (RFC 6350) support
  • jCard compatibility
  • hCard compatibility

** Features

  • can parse vCards.
  • generates (roughly) jCards.

** TODOs

  • implement more attributes.
  • test with output from various software.
  • implement: generate vcards from jcards
  • implement: generate hcards (there's a start in [vcard.js]'s toHtml() method)
  • jCard <-> JSON-LD "http://json-ld.org/contexts/person" conversion

Examples * parse a vcard from a string:

#+BEGIN_SRC javascript

VCF.parse(input, function(vcard) { // this function is called with a VCard instance. // If the input contains more than one vCard, it is called multiple times. console.log("Formatted name", vcard.fn); console.log("Names", JSON.stringify(vcard.n)); });

#+END_SRC

*** load vcard from a file:

#+BEGIN_SRC html

<script>
  function loadVCard() {
    var fileReader = new FileReader();

    fileReader.onloadend = function() {
      document.getElementById('input').innerText = fileReader.result;
      VCF.parse(fileReader.result, function(vc) {
        document.getElementById('output').innerText = JSON.stringify(vc);
      });
    };

    fileReader.readAsText(document.getElementById('upload').files[0]);
  }
</script>

<input type="file" id="upload">
<button onclick="loadVCard()">Load vCard</button>
<h1>IN:</h1>
<pre id="input"></pre>
<h1>OUT:</h1>
<pre id="output"></pre>

** References