| /* |
| * Copyright 2012 Research In Motion Limited. |
| * |
| * Licensed under the Apache License, Version 2.0 (the "License"); |
| * you may not use this file except in compliance with the License. |
| * You may obtain a copy of the License at |
| * |
| * http://www.apache.org/licenses/LICENSE-2.0 |
| * |
| * Unless required by applicable law or agreed to in writing, software |
| * distributed under the License is distributed on an "AS IS" BASIS, |
| * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| * See the License for the specific language governing permissions and |
| * limitations under the License. |
| */ |
| |
| var ATTRIBUTE_KIND, |
| ATTRIBUTE_SUBKIND, |
| kindAttributeMap = {}, |
| subKindAttributeMap = {}, |
| _TITLE = 26, |
| _START_DATE = 43, |
| _END_DATE = 44; |
| |
| function populateKindAttributeMap() { |
| ATTRIBUTE_KIND = { |
| Invalid: 0, |
| Phone: 1, |
| Fax: 2, |
| Pager: 3, |
| Email: 4, |
| Website: 5, |
| Feed: 6, |
| Profile: 7, |
| Family: 8, |
| Person: 9, |
| Date: 10, |
| Group: 11, |
| Name: 12, |
| StockSymbol: 13, |
| Ranking: 14, |
| OrganizationAffiliation: 15, |
| Education: 16, |
| Note: 17, |
| InstantMessaging: 18, |
| VideoChat: 19, |
| ConnectionCount: 20, |
| Hidden: 21, |
| Biography: 22, |
| Sound: 23, |
| Notification: 24, |
| MessageSound: 25, |
| MessageNotification: 26 |
| }; |
| |
| kindAttributeMap[ATTRIBUTE_KIND.Phone] = "phoneNumbers"; |
| kindAttributeMap[ATTRIBUTE_KIND.Fax] = "faxNumbers"; |
| kindAttributeMap[ATTRIBUTE_KIND.Pager] = "pagerNumber"; |
| kindAttributeMap[ATTRIBUTE_KIND.Email] = "emails"; |
| kindAttributeMap[ATTRIBUTE_KIND.Website] = "urls"; |
| kindAttributeMap[ATTRIBUTE_KIND.Profile] = "socialNetworks"; |
| kindAttributeMap[ATTRIBUTE_KIND.OrganizationAffiliation] = "organizations"; |
| kindAttributeMap[ATTRIBUTE_KIND.Education] = "education"; |
| kindAttributeMap[ATTRIBUTE_KIND.Note] = "note"; |
| kindAttributeMap[ATTRIBUTE_KIND.InstantMessaging] = "ims"; |
| kindAttributeMap[ATTRIBUTE_KIND.VideoChat] = "videoChat"; |
| kindAttributeMap[ATTRIBUTE_KIND.Sound] = "ringtone"; |
| } |
| |
| function populateSubKindAttributeMap() { |
| ATTRIBUTE_SUBKIND = { |
| Invalid: 0, |
| Other: 1, |
| Home: 2, |
| Work: 3, |
| PhoneMobile: 4, |
| FaxDirect: 5, |
| Blog: 6, |
| WebsiteResume: 7, |
| WebsitePortfolio: 8, |
| WebsitePersonal: 9, |
| WebsiteCompany: 10, |
| ProfileFacebook: 11, |
| ProfileTwitter: 12, |
| ProfileLinkedIn: 13, |
| ProfileGist: 14, |
| ProfileTungle: 15, |
| FamilySpouse: 16, |
| FamilyChild: 17, |
| FamilyParent: 18, |
| PersonManager: 19, |
| PersonAssistant: 20, |
| DateBirthday: 21, |
| DateAnniversary: 22, |
| GroupDepartment: 23, |
| NameGiven: 24, |
| NameSurname: 25, |
| Title: _TITLE, |
| NameSuffix: 27, |
| NameMiddle: 28, |
| NameNickname: 29, |
| NameAlias: 30, |
| NameDisplayName: 31, |
| NamePhoneticGiven: 32, |
| NamePhoneticSurname: 33, |
| StockSymbolNyse: 34, |
| StockSymbolNasdaq: 35, |
| StockSymbolTse: 36, |
| StockSymbolLse: 37, |
| StockSymbolTsx: 38, |
| RankingKlout: 39, |
| RankingTrstRank: 40, |
| OrganizationAffiliationName: 41, |
| OrganizationAffiliationPhoneticName: 42, |
| OrganizationAffiliationTitle: _TITLE, |
| StartDate: _START_DATE, |
| EndDate: _END_DATE, |
| OrganizationAffiliationDetails: 45, |
| EducationInstitutionName: 46, |
| EducationStartDate: _START_DATE, |
| EducationEndDate: _END_DATE, |
| EducationDegree: 47, |
| EducationConcentration: 48, |
| EducationActivities: 49, |
| EducationNotes: 50, |
| InstantMessagingBbmPin: 51, |
| InstantMessagingAim: 52, |
| InstantMessagingAliwangwang: 53, |
| InstantMessagingGoogleTalk: 54, |
| InstantMessagingSametime: 55, |
| InstantMessagingIcq: 56, |
| InstantMessagingIrc: 57, |
| InstantMessagingJabber: 58, |
| InstantMessagingMsLcs: 59, |
| InstantMessagingMsn: 60, |
| InstantMessagingQq: 61, |
| InstantMessagingSkype: 62, |
| InstantMessagingYahooMessenger: 63, |
| InstantMessagingYahooMessengerJapan: 64, |
| VideoChatBbPlaybook: 65, |
| HiddenLinkedIn: 66, |
| HiddenFacebook: 67, |
| HiddenTwitter: 68, |
| ConnectionCountLinkedIn: 69, |
| ConnectionCountFacebook: 70, |
| ConnectionCountTwitter: 71, |
| HiddenChecksum: 72, |
| HiddenSpeedDial: 73, |
| BiographyFacebook: 74, |
| BiographyTwitter: 75, |
| BiographyLinkedIn: 76, |
| SoundRingtone: 77, |
| SimContactType: 78, |
| EcoID: 79, |
| Personal: 80, |
| StockSymbolAll: 81, |
| NotificationVibration: 82, |
| NotificationLED: 83, |
| MessageNotificationVibration: 84, |
| MessageNotificationLED: 85, |
| MessageNotificationDuringCall: 86, |
| VideoChatPin: 87 |
| }; |
| |
| subKindAttributeMap[ATTRIBUTE_SUBKIND.Other] = "other"; |
| subKindAttributeMap[ATTRIBUTE_SUBKIND.Home] = "home"; |
| subKindAttributeMap[ATTRIBUTE_SUBKIND.Work] = "work"; |
| subKindAttributeMap[ATTRIBUTE_SUBKIND.PhoneMobile] = "mobile"; |
| subKindAttributeMap[ATTRIBUTE_SUBKIND.FaxDirect] = "direct"; |
| subKindAttributeMap[ATTRIBUTE_SUBKIND.Blog] = "blog"; |
| subKindAttributeMap[ATTRIBUTE_SUBKIND.WebsiteResume] = "resume"; |
| subKindAttributeMap[ATTRIBUTE_SUBKIND.WebsitePortfolio] = "portfolio"; |
| subKindAttributeMap[ATTRIBUTE_SUBKIND.WebsitePersonal] = "personal"; |
| subKindAttributeMap[ATTRIBUTE_SUBKIND.WebsiteCompany] = "company"; |
| subKindAttributeMap[ATTRIBUTE_SUBKIND.ProfileFacebook] = "facebook"; |
| subKindAttributeMap[ATTRIBUTE_SUBKIND.ProfileTwitter] = "twitter"; |
| subKindAttributeMap[ATTRIBUTE_SUBKIND.ProfileLinkedIn] = "linkedin"; |
| subKindAttributeMap[ATTRIBUTE_SUBKIND.ProfileGist] = "gist"; |
| subKindAttributeMap[ATTRIBUTE_SUBKIND.ProfileTungle] = "tungle"; |
| subKindAttributeMap[ATTRIBUTE_SUBKIND.DateBirthday] = "birthday"; |
| subKindAttributeMap[ATTRIBUTE_SUBKIND.DateAnniversary] = "anniversary"; |
| subKindAttributeMap[ATTRIBUTE_SUBKIND.NameGiven] = "givenName"; |
| subKindAttributeMap[ATTRIBUTE_SUBKIND.NameSurname] = "familyName"; |
| subKindAttributeMap[ATTRIBUTE_SUBKIND.Title] = "honorificPrefix"; |
| subKindAttributeMap[ATTRIBUTE_SUBKIND.NameSuffix] = "honorificSuffix"; |
| subKindAttributeMap[ATTRIBUTE_SUBKIND.NameMiddle] = "middleName"; |
| subKindAttributeMap[ATTRIBUTE_SUBKIND.NamePhoneticGiven] = "phoneticGivenName"; |
| subKindAttributeMap[ATTRIBUTE_SUBKIND.NamePhoneticSurname] = "phoneticFamilyName"; |
| subKindAttributeMap[ATTRIBUTE_SUBKIND.NameNickname] = "nickname"; |
| subKindAttributeMap[ATTRIBUTE_SUBKIND.NameDisplayName] = "displayName"; |
| subKindAttributeMap[ATTRIBUTE_SUBKIND.OrganizationAffiliationName] = "name"; |
| subKindAttributeMap[ATTRIBUTE_SUBKIND.OrganizationAffiliationDetails] = "department"; |
| subKindAttributeMap[ATTRIBUTE_SUBKIND.Title] = "title"; |
| subKindAttributeMap[ATTRIBUTE_SUBKIND.InstantMessagingBbmPin] = "BbmPin"; |
| subKindAttributeMap[ATTRIBUTE_SUBKIND.InstantMessagingAim] = "Aim"; |
| subKindAttributeMap[ATTRIBUTE_SUBKIND.InstantMessagingAliwangwang] = "Aliwangwang"; |
| subKindAttributeMap[ATTRIBUTE_SUBKIND.InstantMessagingGoogleTalk] = "GoogleTalk"; |
| subKindAttributeMap[ATTRIBUTE_SUBKIND.InstantMessagingSametime] = "Sametime"; |
| subKindAttributeMap[ATTRIBUTE_SUBKIND.InstantMessagingIcq] = "Icq"; |
| subKindAttributeMap[ATTRIBUTE_SUBKIND.InstantMessagingJabber] = "Jabber"; |
| subKindAttributeMap[ATTRIBUTE_SUBKIND.InstantMessagingMsLcs] = "MsLcs"; |
| subKindAttributeMap[ATTRIBUTE_SUBKIND.InstantMessagingSkype] = "Skype"; |
| subKindAttributeMap[ATTRIBUTE_SUBKIND.InstantMessagingYahooMessenger] = "YahooMessenger"; |
| subKindAttributeMap[ATTRIBUTE_SUBKIND.InstantMessagingYahooMessengerJapan] = "YahooMessegerJapan"; |
| subKindAttributeMap[ATTRIBUTE_SUBKIND.VideoChatBbPlaybook] = "BbPlaybook"; |
| subKindAttributeMap[ATTRIBUTE_SUBKIND.SoundRingtone] = "ringtone"; |
| subKindAttributeMap[ATTRIBUTE_SUBKIND.Personal] = "personal"; |
| } |
| |
| module.exports = { |
| getKindAttributeMap: function () { |
| if (!ATTRIBUTE_KIND) { |
| populateKindAttributeMap(); |
| } |
| |
| return kindAttributeMap; |
| }, |
| getSubKindAttributeMap: function () { |
| if (!ATTRIBUTE_SUBKIND) { |
| populateSubKindAttributeMap(); |
| } |
| |
| return subKindAttributeMap; |
| } |
| }; |