亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? wincontact.cpp

?? funambol windows mobile plugin source code, the source code is taken from the funambol site
?? CPP
?? 第 1 頁 / 共 2 頁
字號:
 /*
 * Copyright (C) 2007 Funambol, Inc.
 *
 * This program is free software; you can redistribute it and/or modify
 * it under the terms of the GNU General Public License version 2 as
 * published by the Free Software Foundation.
 *
 * This program is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY, TITLE, NONINFRINGEMENT 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., 59 Temple Place, Suite 330, Boston, MA
 * 02111-1307  USA
*/

#include "vocl/WinContact.h"
#include "vocl/VConverter.h"
#include "vocl/constants.h"
#include "base/stringUtils.h"
using namespace std;


// Constructor
WinContact::WinContact() {
    vCard = L"";
}

// Constructor: fills propertyMap parsing the passed vCard string
WinContact::WinContact(const wstring dataString) {
    vCard = L"";
    parse(dataString);
}

// Destructor
WinContact::~WinContact() {
}


//
// Format and return a vCard string from the propertyMap.
//
wstring WinContact::toString() {

    vCard = L"";

    //
    // Conversion: WinContact -> vObject.
    // ----------------------------------
    //
    VObject* vo = new VObject();
    wstring element;
    VProperty* vp = NULL;
    bool found = false;


    vp = new VProperty(L"BEGIN", L"VCARD");
    vo->addProperty(vp);
    delete vp; vp = NULL;

    vp = new VProperty(L"VERSION", VCARD_VERSION);
    vo->addProperty(vp);
    delete vp; vp = NULL;
        
    // ------- Name -------
    // Add only if at least 1 property is supported, but include 
    // all elements in the right order.
    found = false;
    vp = new VProperty(L"N");
    if (getProperty(L"LastName",   element))  found = true;
    vp->addValue(element.c_str());
    if (getProperty(L"FirstName",  element))  found = true;
    vp->addValue(element.c_str());
    if (getProperty(L"MiddleName", element))  found = true;  
    vp->addValue(element.c_str());
    if (getProperty(L"Title",      element))  found = true;  
    vp->addValue(element.c_str());
    if (getProperty(L"Suffix",     element))  found = true;  
    vp->addValue(element.c_str());
    if (found) {
        vo->addProperty(vp);
    }
    delete vp; vp = NULL;


    if (getProperty(L"Birthday", element)) {
        vp = new VProperty(L"BDAY", element.c_str());
        vo->addProperty(vp);
        delete vp; vp = NULL;
    }
    if (getProperty(L"Body", element)) {
        vp = new VProperty(L"NOTE", element.c_str());
        vo->addProperty(vp);
        delete vp; vp = NULL;
    }
    if (getProperty(L"BusinessFaxNumber", element)) {
        vp = new VProperty(L"TEL", element.c_str());
        vp->addParameter(L"WORK", NULL);
        vp->addParameter(L"FAX", NULL);
        vo->addProperty(vp);
        delete vp; vp = NULL;
    }
    if (getProperty(L"BusinessTelephoneNumber", element)) {
        vp = new VProperty(L"TEL", element.c_str());
        vp->addParameter(L"VOICE", NULL);
        vp->addParameter(L"WORK",  NULL);
        vo->addProperty(vp);
        delete vp; vp = NULL;
    }
    if (getProperty(L"Business2TelephoneNumber", element)) {
        vp = new VProperty(L"TEL", element.c_str());
        vp->addParameter(L"VOICE", NULL);
        vp->addParameter(L"WORK",  NULL);
        vo->addProperty(vp);
        delete vp; vp = NULL;
    }
    if (getProperty(L"BusinessWebPage", element)) {
        vp = new VProperty(L"URL", element.c_str());
        vp->addParameter(L"WORK",  NULL);
        vo->addProperty(vp);
        delete vp; vp = NULL;
    }
    if (getProperty(L"CarTelephoneNumber", element)) {
        vp = new VProperty(L"TEL", element.c_str());
        vp->addParameter(L"CAR",   NULL);
        vp->addParameter(L"VOICE", NULL);
        vo->addProperty(vp);
        delete vp; vp = NULL;
    }
    if (getProperty(L"Categories", element)) {
        vp = new VProperty(L"CATEGORIES", element.c_str());
        vo->addProperty(vp);
        delete vp; vp = NULL;
    }
    if (getProperty(L"CompanyMainTelephoneNumber", element)) {
        vp = new VProperty(L"TEL", element.c_str());
        vp->addParameter(L"WORK",  NULL);
        vp->addParameter(L"PREF",  NULL);
        vo->addProperty(vp);
        delete vp; vp = NULL;
    }
    if (getProperty(L"FileAs", element)) {
        vp = new VProperty(L"FN", element.c_str());
        vo->addProperty(vp);
        delete vp; vp = NULL;
    }

    // Mapping is:
    // Email1Address <-> EMAIL;INTERNET:
    // Email2Address <-> EMAIL;INTERNET;HOME:
    // Email3Address <-> EMAIL;INTERNET;WORK:
    if (getProperty(L"Email1Address", element)) {
        vp = new VProperty(L"EMAIL", element.c_str());
        vp->addParameter(L"INTERNET", NULL);
        vo->addProperty(vp);
        delete vp; vp = NULL;
    }
    if (getProperty(L"Email2Address", element)) {
        vp = new VProperty(L"EMAIL", element.c_str());
        vp->addParameter(L"INTERNET", NULL);
        vp->addParameter(L"HOME",     NULL);
        vo->addProperty(vp);
        delete vp; vp = NULL;
    }
    if (getProperty(L"Email3Address", element)) {
        vp = new VProperty(L"EMAIL", element.c_str());
        vp->addParameter(L"INTERNET", NULL);
        vp->addParameter(L"WORK",     NULL);
        vo->addProperty(vp);
        delete vp; vp = NULL;
    }

    if (getProperty(L"JobTitle", element)) {
        vp = new VProperty(L"TITLE", element.c_str());
        vo->addProperty(vp);
        delete vp; vp = NULL;
    }
    if (getProperty(L"HomeTelephoneNumber", element)) {
        vp = new VProperty(L"TEL", element.c_str());
        vp->addParameter(L"VOICE", NULL);
        vp->addParameter(L"HOME",  NULL);
        vo->addProperty(vp);
        delete vp; vp = NULL;
    }
    if (getProperty(L"Home2TelephoneNumber", element)) {
        vp = new VProperty(L"TEL", element.c_str());
        vp->addParameter(L"VOICE", NULL);
        vp->addParameter(L"HOME",  NULL);
        vo->addProperty(vp);
        delete vp; vp = NULL;
    }
    if (getProperty(L"HomeFaxNumber", element)) {
        vp = new VProperty(L"TEL", element.c_str());
        vp->addParameter(L"HOME", NULL);
        vp->addParameter(L"FAX", NULL);
        vo->addProperty(vp);
        delete vp; vp = NULL;
    }
    if (getProperty(L"HomeWebPage", element)) {
        vp = new VProperty(L"URL", element.c_str());
        vp->addParameter(L"HOME", NULL);
        vo->addProperty(vp);
        delete vp; vp = NULL;
    }
    if (getProperty(L"Importance", element)) {
        vp = new VProperty(L"PRIORITY", element.c_str());
        vo->addProperty(vp);
        delete vp; vp = NULL;
    }
    if (getProperty(L"MobileTelephoneNumber", element)) {
        vp = new VProperty(L"TEL", element.c_str());
        vp->addParameter(L"CELL", NULL);
        vo->addProperty(vp);
        delete vp; vp = NULL;
    }
    if (getProperty(L"NickName", element)) {
        vp = new VProperty(L"NICKNAME", element.c_str());
        vo->addProperty(vp);
        delete vp; vp = NULL;
    }
    if (getProperty(L"OtherFaxNumber", element)) {
        vp = new VProperty(L"TEL", element.c_str());
        vp->addParameter(L"FAX", NULL);
        vo->addProperty(vp);
        delete vp; vp = NULL;
    }
    if (getProperty(L"OtherTelephoneNumber", element)) {
        vp = new VProperty(L"TEL", element.c_str());
        vp->addParameter(L"VOICE", NULL);
        vo->addProperty(vp);
        delete vp; vp = NULL;
    }
    if (getProperty(L"PagerNumber", element)) {
        vp = new VProperty(L"TEL", element.c_str());
        vp->addParameter(L"PAGER", NULL);
        vo->addProperty(vp);
        delete vp; vp = NULL;
    }
    if (getProperty(L"PrimaryTelephoneNumber", element)) {
        vp = new VProperty(L"TEL", element.c_str());
        vp->addParameter(L"PREF",  NULL);
        vp->addParameter(L"VOICE", NULL);
        vo->addProperty(vp);
        delete vp; vp = NULL;
    }
    if (getProperty(L"Profession", element)) {
        vp = new VProperty(L"ROLE", element.c_str());
        vo->addProperty(vp);
        delete vp; vp = NULL;
    }
    if (getProperty(L"Sensitivity", element)) {
        long sensitivity = _wtoi(element.c_str());
        vp = new VProperty(TEXT("CLASS"));
        if(sensitivity == winPrivate) {
            vp->addValue(TEXT("PRIVATE"));
        }
        else if (sensitivity == winConfidential) {
            vp->addValue(TEXT("CONFIDENTIAL"));
        }
        else {  // default value
            vp->addValue(TEXT("PUBLIC"));
        }
        vo->addProperty(vp);
        delete vp; vp = NULL;
    }
    if (getProperty(L"WebPage", element)) {
        vp = new VProperty(L"URL", element.c_str());
        vo->addProperty(vp);
        delete vp; vp = NULL;
    }


    // ----- ORG -----
    // Add only if at least 1 property is supported, but include 
    // all elements in the right order.
    found = false;
    vp = new VProperty(L"ORG");
    if (getProperty(L"CompanyName",    element))   found = true;
    vp->addValue(element.c_str());
    if (getProperty(L"Department",     element))   found = true;
    vp->addValue(element.c_str());
    if (getProperty(L"OfficeLocation", element))   found = true;
    vp->addValue(element.c_str());
    if (found) {
        vo->addProperty(vp);
    }
    delete vp; vp = NULL;


    // ----- Address HOME -----
    // Add only if at least 1 property is supported, but include 
    // all elements in the right order.
    // "AddressPostOfficeBox" is not supported by WM.
    // "AddressExtended" is not supported by Outlook/WM.
    found = false;
    vp = new VProperty(L"ADR");
    vp->addParameter(L"HOME", NULL);
    if (getProperty(L"HomeAddressPostOfficeBox", element))   found = true;
    vp->addValue(element.c_str());
    if (getProperty(L"HomeAddressExtended",      element))   found = true;
    vp->addValue(element.c_str());
    if (getProperty(L"HomeAddressStreet",        element))   found = true;
    vp->addValue(element.c_str());
    if (getProperty(L"HomeAddressCity",          element))   found = true;
    vp->addValue(element.c_str());
    if (getProperty(L"HomeAddressState",         element))   found = true;
    vp->addValue(element.c_str());
    if (getProperty(L"HomeAddressPostalCode",    element))   found = true;
    vp->addValue(element.c_str());
    if (getProperty(L"HomeAddressCountry",       element))   found = true;
    vp->addValue(element.c_str());
    if (found) {
        vo->addProperty(vp);
    }
    delete vp; vp = NULL;


    // ----- Address -----
    // Add only if at least 1 property is supported, but include 
    // all elements in the right order.
    // "AddressPostOfficeBox" is not supported by WM.
    // "AddressExtended" is not supported by Outlook/WM.
    found = false;
    vp = new VProperty(L"ADR");
    if (getProperty(L"OtherAddressPostOfficeBox", element))   found = true;
    vp->addValue(element.c_str());
    if (getProperty(L"OtherAddressExtended",      element))   found = true;
    vp->addValue(element.c_str());
    if (getProperty(L"OtherAddressStreet",        element))   found = true;
    vp->addValue(element.c_str());
    if (getProperty(L"OtherAddressCity",          element))   found = true;
    vp->addValue(element.c_str());
    if (getProperty(L"OtherAddressState",         element))   found = true;
    vp->addValue(element.c_str());
    if (getProperty(L"OtherAddressPostalCode",    element))   found = true;
    vp->addValue(element.c_str());
    if (getProperty(L"OtherAddressCountry",       element))   found = true;
    vp->addValue(element.c_str());
    if (found) {
        vo->addProperty(vp);
    }
    delete vp; vp = NULL;


    // ----- Address WORK -----
    // Add only if at least 1 property is supported, but include 
    // all elements in the right order.
    // "AddressPostOfficeBox" is not supported by WM.
    // "AddressExtended" is not supported by Outlook/WM.
    found = false;
    vp = new VProperty(L"ADR");
    vp->addParameter(L"WORK", NULL);
    if (getProperty(L"BusinessAddressPostOfficeBox", element))   found = true;
    vp->addValue(element.c_str());
    if (getProperty(L"BusinessAddressExtended",      element))   found = true;
    vp->addValue(element.c_str());
    if (getProperty(L"BusinessAddressStreet",        element))   found = true;
    vp->addValue(element.c_str());
    if (getProperty(L"BusinessAddressCity",          element))   found = true;
    vp->addValue(element.c_str());
    if (getProperty(L"BusinessAddressState",         element))   found = true;
    vp->addValue(element.c_str());
    if (getProperty(L"BusinessAddressPostalCode",    element))   found = true;
    vp->addValue(element.c_str());
    if (getProperty(L"BusinessAddressCountry",       element))   found = true;
    vp->addValue(element.c_str());
    if (found) {
        vo->addProperty(vp);
    }
    delete vp; vp = NULL;
    
     //PHOTO
    if (getProperty(L"Picture", element)) {
        vp = new VProperty(L"PHOTO", element.c_str());
        if (element != L"") {
            vp->addParameter(L"CONTENT-VALUE", L"UNCHANGED");        
            vp->addParameter(L"ENCODING", L"b");
            vp->addParameter(L"TYPE", L"JPEG");        
        }
        vo->addProperty(vp);
        delete vp; vp = NULL;
    }    

    //
    // ---- Funambol defined properties ----
    // Support for other fields that don't have a
    // specific correspondence in vCard.
    if (getProperty(L"Anniversary", element)) {
        vp = new VProperty(L"X-FUNAMBOL-ANNIVERSARY");
        vp->addValue(element.c_str());
        vo->addProperty(vp);
        delete vp; vp = NULL;
    }
    if (getProperty(L"CallbackTelephoneNumber", element)) {
        vp = new VProperty(L"TEL", element.c_str());
        vp->addParameter(L"X-FUNAMBOL-CALLBACK",  NULL);
        vo->addProperty(vp);

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
精品理论电影在线观看| 中文字幕综合网| 中文字幕 久热精品 视频在线| 久久精品人人做人人爽97| 国产精品国产自产拍在线| 亚洲图片欧美色图| 国产成人综合在线| 色狠狠色狠狠综合| 日韩久久免费av| 中文字幕一区二区在线播放| 亚洲成av人片在线观看| 国产成人亚洲综合a∨猫咪| 欧美在线小视频| 久久久久久亚洲综合| 亚洲一区成人在线| 成人高清视频在线观看| 制服视频三区第一页精品| 国产精品网曝门| 老司机精品视频一区二区三区| av在线一区二区| 欧美精品1区2区3区| 亚洲丝袜精品丝袜在线| 亚洲一区欧美一区| 成人免费电影视频| 欧美日韩和欧美的一区二区| 精品成人一区二区三区四区| 亚洲欧洲av在线| 天堂蜜桃91精品| 一本久久精品一区二区| 久久久亚洲高清| 日本不卡高清视频| 欧美色图一区二区三区| 中文字幕第一页久久| 美女精品一区二区| 91九色02白丝porn| 亚洲欧洲精品一区二区三区不卡| 精品中文字幕一区二区| 777亚洲妇女| 亚洲狠狠爱一区二区三区| 91麻豆免费观看| 亚洲欧洲在线观看av| 成人精品gif动图一区| 久久久久久99久久久精品网站| 日韩精品一二三四| 8x8x8国产精品| 免费在线欧美视频| 8v天堂国产在线一区二区| 午夜精品福利一区二区蜜股av | 国产精品一二三四区| 精品国产一区久久| 国产精品一级片| 国产亚洲精品bt天堂精选| 久久99精品久久久久久动态图 | 欧美网站一区二区| 亚洲高清免费在线| 日韩一区二区三区精品视频 | 亚洲国产日韩在线一区模特| 一本大道综合伊人精品热热| 亚洲免费观看高清在线观看| 99riav一区二区三区| 一区二区在线观看视频| 欧美日韩在线电影| 免费在线观看日韩欧美| wwww国产精品欧美| 成人黄色免费短视频| 自拍偷拍国产亚洲| 欧美久久一二区| 久久国产剧场电影| 欧美极品另类videosde| 99re成人精品视频| 亚洲成精国产精品女| 欧美成人猛片aaaaaaa| 亚洲一区二区三区激情| 欧美一区二区三区男人的天堂| 看电视剧不卡顿的网站| 欧美大片日本大片免费观看| 久久爱www久久做| 国产精品另类一区| 欧美高清视频一二三区| 韩国三级中文字幕hd久久精品| 亚洲人精品一区| 国产亚洲欧洲997久久综合| 一本一道波多野结衣一区二区| 亚洲综合色在线| 69堂精品视频| 成人激情校园春色| 男男gaygay亚洲| 亚洲色图清纯唯美| 精品国产免费一区二区三区四区| 白白色亚洲国产精品| 免费观看日韩av| 亚洲人成在线播放网站岛国| 欧美xxxxxxxx| 一本色道久久综合精品竹菊| 黄一区二区三区| 亚洲第一会所有码转帖| 国产欧美1区2区3区| 欧美性猛交xxxx黑人交| 国产激情视频一区二区三区欧美 | 国产精品入口麻豆九色| 色欲综合视频天天天| 成人午夜免费av| 国产成人精品亚洲日本在线桃色 | 中文字幕欧美日本乱码一线二线| 欧美精品1区2区| 日本电影亚洲天堂一区| 国产盗摄视频一区二区三区| 丝袜美腿亚洲色图| 国产精品国产三级国产aⅴ无密码| 欧美一区二区三区视频在线| 色诱亚洲精品久久久久久| 韩日av一区二区| 亚洲123区在线观看| 亚洲精品中文字幕在线观看| 国产免费成人在线视频| 精品sm捆绑视频| 91精品国产欧美一区二区18| 在线看一区二区| 91丝袜高跟美女视频| 热久久久久久久| 亚洲午夜一区二区三区| 中文字幕一区二区三区在线观看| 777色狠狠一区二区三区| 在线观看亚洲a| 99久久精品免费看| 国产成人精品一区二| 久久99精品国产.久久久久久| 一区二区三区欧美日韩| 国产欧美日韩综合精品一区二区| 欧美电影影音先锋| 欧美日韩国产一二三| 在线观看网站黄不卡| 精品国产第一区二区三区观看体验| 欧美年轻男男videosbes| 欧美日韩你懂的| 欧美日韩国产一区二区三区地区| 欧美日韩一区 二区 三区 久久精品| 日本道色综合久久| 欧美日本乱大交xxxxx| 欧美老年两性高潮| 欧美一级片在线观看| 日韩一级片在线观看| 欧美xfplay| 欧美国产一区在线| 一区视频在线播放| 亚洲精品成a人| 亚洲国产精品一区二区www在线| 一区二区在线看| 日韩激情视频网站| 国产专区综合网| 成人h动漫精品一区二区| 成人午夜私人影院| 日本精品视频一区二区| 欧美日韩一区二区三区高清| 欧美一区二区三区免费大片| 亚洲精品在线观看视频| 久久日一线二线三线suv| 国产色一区二区| 亚洲精品国产精华液| 美女视频网站久久| 高清久久久久久| 色噜噜狠狠色综合中国| 在线成人免费视频| 国产午夜一区二区三区| 亚洲欧美日韩久久| 国产麻豆成人传媒免费观看| 99re热视频精品| 91精品国产色综合久久ai换脸 | 欧美一级艳片视频免费观看| 久久久综合激的五月天| 亚洲激情在线激情| 蜜桃av一区二区| 91在线精品秘密一区二区| 欧美精品 国产精品| 国产精品嫩草99a| 视频一区视频二区在线观看| 国产中文字幕精品| 欧美亚洲国产一区在线观看网站| 欧美一区欧美二区| 亚洲视频 欧洲视频| 玖玖九九国产精品| 日本久久精品电影| 国产女同互慰高潮91漫画| 日韩黄色片在线观看| 99re视频精品| 久久蜜桃av一区二区天堂| 亚洲一区二区影院| 国产a区久久久| 日韩三级精品电影久久久| 国产日韩精品一区二区三区| 午夜精品一区在线观看| 国产欧美精品在线观看| 天天操天天综合网| 欧美欧美欧美欧美首页| 亚洲v中文字幕| 欧美日韩国产系列| 亚洲chinese男男1069| 欧美三区在线视频| 午夜精品福利一区二区蜜股av| 欧美日韩国产综合一区二区三区|