forked from OfficeDev/outlook-add-in-command-demo
-
Notifications
You must be signed in to change notification settings - Fork 2
/
Functions.js
107 lines (88 loc) · 3.26 KB
/
Functions.js
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
// Copyright (c) Microsoft. All rights reserved. Licensed under the MIT license. See LICENSE.txt in the project root for license information.
Office.initialize = function () {
}
// Helper function to add a status message to
// the info bar.
function statusUpdate(icon, text) {
Office.context.mailbox.item.notificationMessages.replaceAsync("status", {
type: "informationalMessage",
icon: icon,
message: text,
persistent: false
});
}
// Adds text into the body of the item, then reports the results
// to the info bar.
function addTextToBody(text, icon, event) {
Office.context.mailbox.item.body.setSelectedDataAsync(text, { coercionType: Office.CoercionType.Text },
function (asyncResult){
if (asyncResult.status == Office.AsyncResultStatus.Succeeded) {
statusUpdate(icon, "\"" + text + "\" inserted successfully.");
}
else {
Office.context.mailbox.item.notificationMessages.addAsync("addTextError", {
type: "errorMessage",
message: "Failed to insert \"" + text + "\": " + asyncResult.error.message
});
}
event.completed();
});
}
function addDefaultMsgToBody(event) {
addTextToBody("Inserted by the Add-in Command Demo add-in.", "blue-icon-16", event);
}
function addMsg1ToBody(event) {
addTextToBody("Hello World!", "red-icon-16", event);
}
function addMsg2ToBody(event) {
addTextToBody("Add-in commands are cool!", "red-icon-16", event);
}
function addMsg3ToBody(event) {
addTextToBody("Visit https://developer.microsoft.com/en-us/outlook/ today for all of your add-in development needs.", "red-icon-16", event);
}
// Gets the subject of the item and displays it in the info bar.
function getSubject(event) {
var subject = Office.context.mailbox.item.subject;
Office.context.mailbox.item.notificationMessages.addAsync("subject", {
type: "informationalMessage",
icon: "blue-icon-16",
message: "Subject: " + subject,
persistent: false
});
event.completed();
}
// Gets the item class of the item and displays it in the info bar.
function getItemClass(event) {
var itemClass = Office.context.mailbox.item.itemClass;
Office.context.mailbox.item.notificationMessages.addAsync("itemClass", {
type: "informationalMessage",
icon: "red-icon-16",
message: "Item Class: " + itemClass,
persistent: false
});
event.completed();
}
// Gets the date and time when the item was created and displays it in the info bar.
function getDateTimeCreated(event) {
var dateTimeCreated = Office.context.mailbox.item.dateTimeCreated;
Office.context.mailbox.item.notificationMessages.addAsync("dateTimeCreated", {
type: "informationalMessage",
icon: "red-icon-16",
message: "Created: " + dateTimeCreated.toLocaleString(),
persistent: false
});
event.completed();
}
// Gets the ID of the item and displays it in the info bar.
function getItemID(event) {
// Limited to 150 characters max in the info bar, so
// only grab the first 50 characters of the ID
var itemID = Office.context.mailbox.item.itemId.substring(0, 50);
Office.context.mailbox.item.notificationMessages.addAsync("itemID", {
type: "informationalMessage",
icon: "red-icon-16",
message: "Item ID: " + itemID,
persistent: false
});
event.completed();
}