1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121
|
<?xml version="1.0" encoding="UTF-8"?>
<!--
-
- $Id$
-
- This file is part of the OpenLink Software Virtuoso Open-Source (VOS)
- project.
-
- Copyright (C) 1998-2018 OpenLink Software
-
- This project is free software; you can redistribute it and/or modify it
- under the terms of the GNU General Public License as published by the
- Free Software Foundation; only version 2 of the License, dated June 1991.
-
- This program is distributed in the hope that it will be useful, but
- WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- General Public License for more details.
-
- You should have received a copy of the GNU General Public License along
- with this program; if not, write to the Free Software Foundation, Inc.,
- 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
-
-->
<v:page name="blog-home-page" xmlns:vm="http://www.openlinksw.com/vspx/ods/" xmlns:v="http://www.openlinksw.com/vspx/" style="index.xsl" doctype="-//W3C//DTD XHTML 1.0 Transitional//EN" doctype-system="http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<vm:page>
<vm:header>
<vm:title>My Profile</vm:title>
</vm:header>
<vm:pagewrapper>
<vm:navigation on="home"/>
<vm:navigation1 on="sn"/>
<vm:navigation2 on="sn_profile"/>
<vm:rawheader caption="My Profile"/>
<vm:body>
<vm:login redirect="index.vspx"/>
</vm:body>
</vm:pagewrapper>
</vm:page>
<?vsp
declare uid, fn, mail, opts, tmp, str any;
uid := get_keyword ('uid', self.vc_event.ve_params);
select U_FULL_NAME, U_E_MAIL, deserialize (blob_to_string (U_OPTS))
into fn, mail, opts from SYS_USERS where U_NAME = uid;
http_rewrite ();
http_header ('Content-Type: text/x-vcard\r\n');
--http_header ('Content-Type: text/plain\r\n');
http ('BEGIN:VCARD\r\n');
http ('VERSION:2.1\r\n');
http (sprintf ('FN:%s\r\n', fn));
http (sprintf ('EMAIL;PREF;INTERNET:%s\r\n', mail));
http (sprintf ('N:%s;%s\r\n', get_keyword ('FIRST_NAME',opts), get_keyword ('LAST_NAME', opts)));
http (sprintf ('NICKNAME:%s\r\n', uid));
tmp := get_keyword ('BIRTHDAY', opts);
if (tmp is not null and __tag (tmp) = 211)
http (sprintf ('BDAY:%s\r\n', date_iso8601 (tmp)));
str := ';';
tmp := get_keyword ('ADDR1', opts, '');
str := str || '' || tmp;
tmp := get_keyword ('ADDR2', opts, '');
str := str || ';' || tmp;
tmp := get_keyword ('CITY', opts, '');
str := str || ';' || tmp;
tmp := get_keyword ('STATE', opts, '');
str := str || ';' || tmp;
tmp := get_keyword ('ZIP', opts, '');
str := str || ';' || tmp;
tmp := get_keyword ('COUNTRY', opts, '');
str := str || ';' || tmp;
http (sprintf ('ADR;TYPE=HOME:%s\r\n', str));
tmp := get_keyword ('PHONE', opts);
if (isstring(tmp))
http (sprintf ('TEL;TYPE=HOME;VOICE:%s\r\n', tmp));
str := ';;';
tmp := get_keyword ('BADDR1', opts, '');
str := str || '' || tmp;
tmp := get_keyword ('BADDR2', opts, '');
str := str || ' ' || tmp;
tmp := get_keyword ('BCITY', opts, '');
str := str || ';' || tmp;
tmp := get_keyword ('BSTATE', opts, '');
str := str || ';' || tmp;
tmp := get_keyword ('BZIP', opts, '');
str := str || ';' || tmp;
tmp := get_keyword ('BCOUNTRY', opts, '');
str := str || ';' || tmp;
http (sprintf ('ADR;TYPE=WORK:%s\r\n', str));
tmp := get_keyword ('BPHONE', opts);
if (isstring(tmp))
http (sprintf ('TEL;TYPE=WORK;VOICE:%s\r\n', tmp));
tmp := get_keyword ('MPHONE', opts);
if (isstring(tmp))
http (sprintf ('TEL;TYPE=CELL;VOICE:%s\r\n', tmp));
tmp := get_keyword ('TIMEZONE',opts);
if (tmp is not null)
http (sprintf ('TZ:%s\r\n', tmp));
tmp := get_keyword ('URL',opts);
if (tmp is not null)
http (sprintf ('URL:%s\r\n', tmp));
tmp := get_keyword ('ORGANIZATION', opts);
if (tmp is not null)
http (sprintf ('ORG:%s\r\n', tmp));
http ('END:VCARD\r\n');
return;
?>
</v:page>
|