forked from OfficeDev/outlook-add-in-command-demo
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathFunctions.js
More file actions
128 lines (105 loc) · 4.31 KB
/
Functions.js
File metadata and controls
128 lines (105 loc) · 4.31 KB
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
122
123
124
125
126
127
128
// Copyright (c) Microsoft. All rights reserved. Licensed under the MIT license. See full license at the bottom of this file.
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://dev.outlook.com 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();
}
// MIT License:
// Permission is hereby granted, free of charge, to any person obtaining
// a copy of this software and associated documentation files (the
// ""Software""), to deal in the Software without restriction, including
// without limitation the rights to use, copy, modify, merge, publish,
// distribute, sublicense, and/or sell copies of the Software, and to
// permit persons to whom the Software is furnished to do so, subject to
// the following conditions:
// The above copyright notice and this permission notice shall be
// included in all copies or substantial portions of the Software.
// THE SOFTWARE IS PROVIDED ""AS IS"", WITHOUT WARRANTY OF ANY KIND,
// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.