Пример #1
0
 function testEncode()
 {
     $card = new Component\VCard();
     $card->add('N', array('van der Harten', array('Rene', 'J.'), "", 'Sir', 'R.D.O.N.'), array('SORT-AS' => array('Harten', 'Rene')));
     $expected = implode("\r\n", array("BEGIN:VCARD", "VERSION:3.0", "PRODID:-//Sabre//Sabre VObject " . Version::VERSION . '//EN', "N;SORT-AS=Harten,Rene:van der Harten;Rene,J.;;Sir;R.D.O.N.", "END:VCARD", ""));
     $this->assertEquals($expected, $card->serialize());
 }
Пример #2
0
 function testToJCard()
 {
     $card = new Component\VCard(array("VERSION" => "4.0", "UID" => "foo", "BDAY" => "19850407", "REV" => "19951031T222710Z", "LANG" => "nl", "N" => array("Last", "First", "Middle", "", ""), "item1.TEL" => "+1 555 123456", "item1.X-AB-LABEL" => "Walkie Talkie", "ADR" => array("", "", array("My Street", "Left Side", "Second Shack"), "Hometown", "PA", "18252", "U.S.A")));
     $card->add('BDAY', '1979-12-25', array('VALUE' => 'DATE', 'X-PARAM' => array(1, 2)));
     $card->add('BDAY', '1979-12-25T02:00:00', array('VALUE' => 'DATE-TIME'));
     $card->add('X-TRUNCATED', '--1225', array('VALUE' => 'DATE'));
     $card->add('X-TIME-LOCAL', '123000', array('VALUE' => 'TIME'));
     $card->add('X-TIME-UTC', '12:30:00Z', array('VALUE' => 'TIME'));
     $card->add('X-TIME-OFFSET', '12:30:00-08:00', array('VALUE' => 'TIME'));
     $card->add('X-TIME-REDUCED', '23', array('VALUE' => 'TIME'));
     $card->add('X-TIME-TRUNCATED', '--30', array('VALUE' => 'TIME'));
     $card->add('X-KARMA-POINTS', '42', array('VALUE' => 'INTEGER'));
     $card->add('X-GRADE', '1.3', array('VALUE' => 'FLOAT'));
     $card->add('TZ', '-05:00', array('VALUE' => 'UTC-OFFSET'));
     $expected = array("vcard", array(array("version", new \StdClass(), "text", "4.0"), array("prodid", new \StdClass(), "text", "-//Sabre//Sabre VObject " . Version::VERSION . "//EN"), array("uid", new \StdClass(), "text", "foo"), array("bday", new \StdClass(), "date-and-or-time", "1985-04-07"), array("rev", new \StdClass(), "timestamp", "1995-10-31T22:27:10Z"), array("lang", new \StdClass(), "language-tag", "nl"), array("n", new \StdClass(), "text", array("Last", "First", "Middle", "", "")), array("tel", (object) array("group" => "item1"), "text", "+1 555 123456"), array("x-ab-label", (object) array("group" => "item1"), "unknown", "Walkie Talkie"), array("adr", new \StdClass(), "text", array("", "", array("My Street", "Left Side", "Second Shack"), "Hometown", "PA", "18252", "U.S.A")), array("bday", (object) array('x-param' => array(1, 2)), "date", "1979-12-25"), array("bday", new \StdClass(), "date-time", "1979-12-25T02:00:00"), array("x-truncated", new \StdClass(), "date", "--12-25"), array("x-time-local", new \StdClass(), "time", "12:30:00"), array("x-time-utc", new \StdClass(), "time", "12:30:00Z"), array("x-time-offset", new \StdClass(), "time", "12:30:00-08:00"), array("x-time-reduced", new \StdClass(), "time", "23"), array("x-time-truncated", new \StdClass(), "time", "--30"), array("x-karma-points", new \StdClass(), "integer", 42), array("x-grade", new \StdClass(), "float", 1.3), array("tz", new \StdClass(), "utc-offset", "-05:00")));
     $this->assertEquals($expected, $card->jsonSerialize());
 }