2020-06-22 17:24:44 +02:00
|
|
|
<!doctype html>
|
|
|
|
<html lang="en-us">
|
|
|
|
|
|
|
|
<head>
|
|
|
|
<meta charset="utf-8">
|
2020-06-22 22:21:25 +02:00
|
|
|
<title>Mobileconfig Generator</title>
|
2020-06-22 17:24:44 +02:00
|
|
|
<meta name="viewport" content="width=device-width, initial-scale=1">
|
|
|
|
<link rel="stylesheet" href="css/main.css">
|
|
|
|
</head>
|
|
|
|
|
|
|
|
<body>
|
2020-06-22 21:28:22 +02:00
|
|
|
<div id="app">
|
|
|
|
<h1>1. Fill in the forms for your email configuration profile</h1>
|
|
|
|
<p>Documentation can be found
|
|
|
|
<a href="https://developer.apple.com/documentation/devicemanagement/configuring_multiple_devices_using_profiles">here</a>
|
|
|
|
for common fields and
|
|
|
|
<a href="https://developer.apple.com/documentation/devicemanagement/mail">here</a>
|
|
|
|
for email specific fields.
|
2020-06-22 17:24:44 +02:00
|
|
|
</p>
|
2020-06-23 17:26:20 +02:00
|
|
|
<p>
|
|
|
|
Everything happens in your browser, your data isn't sent anywhere.
|
|
|
|
</p>
|
2020-06-22 21:43:11 +02:00
|
|
|
<p>
|
|
|
|
This is a free and open source software released under the GPL v3.0. The source code is available
|
|
|
|
<a href="https://sr.ht/~crocmagnon/mobileconfig-generator/">on sourcehut</a>.
|
|
|
|
</p>
|
2020-06-22 21:28:22 +02:00
|
|
|
<div id="profile">
|
|
|
|
<?xml version="1.0" encoding="UTF-8"?>
|
|
|
|
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
|
|
|
<plist version='1.0'>
|
|
|
|
<dict>
|
|
|
|
<key>PayloadContent</key>
|
|
|
|
<array>
|
|
|
|
<dict>
|
2020-06-23 17:43:03 +02:00
|
|
|
<key><strong>EmailAccountType</strong></key>
|
2020-06-22 21:28:22 +02:00
|
|
|
<string><select v-model="payload.EmailAccountType">
|
|
|
|
<option value="" disabled>Select...</option>
|
|
|
|
<option>EmailTypeIMAP</option>
|
|
|
|
<option>EmailTypePOP</option>
|
|
|
|
</select></string>
|
2020-06-23 17:43:03 +02:00
|
|
|
<key><strong>EmailAddress</strong></key>
|
2020-06-22 21:28:22 +02:00
|
|
|
<string><input type="email" v-model="payload.EmailAddress" v-bind:placeholder="payloadPlaceholders.EmailAddress"></string>
|
2020-06-23 17:43:03 +02:00
|
|
|
<key><strong>EmailAccountDescription</strong></key>
|
2020-06-22 21:28:22 +02:00
|
|
|
<string><input type="text" v-model="payload.EmailAccountDescription" v-bind:placeholder="payloadPlaceholders.EmailAccountDescription"></string>
|
|
|
|
|
|
|
|
<!-- Incoming -->
|
2020-06-23 17:51:27 +02:00
|
|
|
<key><strong>IncomingMailServerAuthentication</strong></key>
|
2020-06-22 21:28:22 +02:00
|
|
|
<string><select v-model="payload.IncomingMailServerAuthentication">
|
|
|
|
<option value="" disabled>Select...</option>
|
|
|
|
<option>EmailAuthNone</option>
|
|
|
|
<option>EmailAuthPassword</option>
|
|
|
|
<option>EmailAuthCRAMMD5</option>
|
|
|
|
<option>EmailAuthNTLM</option>
|
|
|
|
<option>EmailAuthHTTPMD5</option>
|
|
|
|
</select></string>
|
2020-06-23 17:51:27 +02:00
|
|
|
<key><strong>IncomingMailServerHostName</strong></key>
|
2020-06-22 21:28:22 +02:00
|
|
|
<string><input type="text" v-model="payload.IncomingMailServerHostName" v-bind:placeholder="payloadPlaceholders.IncomingMailServerHostName"></string>
|
2020-06-23 17:51:27 +02:00
|
|
|
<key><strong>IncomingMailServerPortNumber</strong></key>
|
2020-06-22 21:28:22 +02:00
|
|
|
<integer><input type="number" v-model="payload.IncomingMailServerPortNumber" v-bind:placeholder="payloadPlaceholders.IncomingMailServerPortNumber"></integer>
|
2020-06-23 17:51:27 +02:00
|
|
|
<key><strong>IncomingMailServerUsername</strong></key>
|
2020-06-22 21:28:22 +02:00
|
|
|
<string><input type="text" v-model="payload.IncomingMailServerUsername" v-bind:placeholder="payloadPlaceholders.IncomingMailServerUsername"></string>
|
2020-06-23 17:51:27 +02:00
|
|
|
<key><strong>IncomingMailServerUseSSL</strong></key>
|
2020-06-22 21:28:22 +02:00
|
|
|
<<input type="checkbox" v-model="payload.IncomingMailServerUseSSL">/>
|
|
|
|
|
|
|
|
<!-- Outgoing -->
|
2020-06-23 17:51:27 +02:00
|
|
|
<key><strong>OutgoingMailServerAuthentication</strong></key>
|
2020-06-22 21:28:22 +02:00
|
|
|
<string><select v-model="payload.OutgoingMailServerAuthentication">
|
|
|
|
<option value="" disabled>Select...</option>
|
|
|
|
<option>EmailAuthNone</option>
|
|
|
|
<option>EmailAuthPassword</option>
|
|
|
|
<option>EmailAuthCRAMMD5</option>
|
|
|
|
<option>EmailAuthNTLM</option>
|
|
|
|
<option>EmailAuthHTTPMD5</option>
|
|
|
|
</select></string>
|
2020-06-23 17:51:27 +02:00
|
|
|
<key><strong>OutgoingMailServerHostName</strong></key>
|
2020-06-22 21:28:22 +02:00
|
|
|
<string><input type="text" v-model="payload.OutgoingMailServerHostName" v-bind:placeholder="payloadPlaceholders.OutgoingMailServerHostName"></string>
|
2020-06-23 17:51:27 +02:00
|
|
|
<key><strong>OutgoingMailServerPortNumber</strong></key>
|
2020-06-22 21:28:22 +02:00
|
|
|
<integer><input type="number" v-model="payload.OutgoingMailServerPortNumber" v-bind:placeholder="payloadPlaceholders.OutgoingMailServerPortNumber"></integer>
|
2020-06-23 17:51:27 +02:00
|
|
|
<key><strong>OutgoingMailServerUsername</strong></key>
|
2020-06-22 21:28:22 +02:00
|
|
|
<string><input type="text" v-model="payload.OutgoingMailServerUsername" v-bind:placeholder="payloadPlaceholders.OutgoingMailServerUsername"></string>
|
2020-06-23 17:51:27 +02:00
|
|
|
<key><strong>OutgoingMailServerUseSSL</strong></key>
|
2020-06-22 21:28:22 +02:00
|
|
|
<<input type="checkbox" v-model="payload.OutgoingMailServerUseSSL">/>
|
2020-06-23 17:51:27 +02:00
|
|
|
<key><strong>OutgoingPasswordSameAsIncomingPassword</strong></key>
|
2020-06-22 21:28:22 +02:00
|
|
|
<<input type="checkbox" v-model="payload.OutgoingPasswordSameAsIncomingPassword">/>
|
|
|
|
|
|
|
|
<!-- Common keys -->
|
2020-06-23 17:51:27 +02:00
|
|
|
<key><strong>PayloadDisplayName</strong></key>
|
2020-06-22 21:28:22 +02:00
|
|
|
<string><input type="text" v-model="payload.PayloadDisplayName" v-bind:placeholder="payloadPlaceholders.PayloadDisplayName"></string>
|
2020-06-23 17:51:27 +02:00
|
|
|
<key><strong>PayloadDescription</strong></key>
|
2020-06-22 21:28:22 +02:00
|
|
|
<string><input type="text" v-model="payload.PayloadDescription" v-bind:placeholder="payloadPlaceholders.PayloadDescription"></string>
|
2020-06-23 17:51:27 +02:00
|
|
|
<key><strong>PayloadIdentifier</strong></key>
|
2020-06-22 21:28:22 +02:00
|
|
|
<string><input type="text" v-model="payload.PayloadIdentifier" v-bind:placeholder="payloadPlaceholders.PayloadIdentifier"></string>
|
2020-06-23 17:51:27 +02:00
|
|
|
<key><strong>PayloadType</strong></key>
|
2020-06-22 21:28:22 +02:00
|
|
|
<string>{{ payload.PayloadType }}</string>
|
2020-06-23 17:51:27 +02:00
|
|
|
<key><strong>PayloadUUID</strong></key>
|
2020-06-22 21:28:22 +02:00
|
|
|
<string>{{ payload.PayloadUUID() }}</string>
|
2020-06-23 17:51:27 +02:00
|
|
|
<key><strong>PayloadVersion</strong></key>
|
2020-06-22 21:28:22 +02:00
|
|
|
<integer>{{ payload.PayloadVersion }}</integer>
|
|
|
|
</dict>
|
|
|
|
</array>
|
|
|
|
|
|
|
|
<!-- Common keys -->
|
2020-06-23 17:51:27 +02:00
|
|
|
<key><strong>PayloadDisplayName</strong></key>
|
2020-06-22 21:28:22 +02:00
|
|
|
<string><input type="text" v-model="container.PayloadDisplayName" v-bind:placeholder="containerPlaceholders.PayloadDisplayName"></string>
|
2020-06-23 17:51:27 +02:00
|
|
|
<key><strong>PayloadDescription</strong></key>
|
2020-06-22 21:28:22 +02:00
|
|
|
<string><input type="text" v-model="container.PayloadDescription" v-bind:placeholder="containerPlaceholders.PayloadDescription"></string>
|
2020-06-23 17:51:27 +02:00
|
|
|
<key><strong>PayloadIdentifier</strong></key>
|
2020-06-22 21:28:22 +02:00
|
|
|
<string><input type="text" v-model="container.PayloadIdentifier" v-bind:placeholder="containerPlaceholders.PayloadIdentifier"></string>
|
2020-06-23 17:51:27 +02:00
|
|
|
<key><strong>PayloadType</strong></key>
|
2020-06-22 21:28:22 +02:00
|
|
|
<string>{{ container.PayloadType }}</string>
|
2020-06-23 17:51:27 +02:00
|
|
|
<key><strong>PayloadUUID</strong></key>
|
2020-06-22 21:28:22 +02:00
|
|
|
<string>{{ container.PayloadUUID() }}</string>
|
2020-06-23 17:51:27 +02:00
|
|
|
<key><strong>PayloadVersion</strong></key>
|
2020-06-22 21:28:22 +02:00
|
|
|
<integer>{{ container.PayloadVersion }}</integer>
|
|
|
|
</dict>
|
|
|
|
</plist>
|
|
|
|
</div>
|
|
|
|
|
|
|
|
<h1>2. Download your profile</h1>
|
|
|
|
<a v-bind:href="generatedProfileLink" v-bind:download="downloadFileName">Download</a>
|
|
|
|
|
|
|
|
<h1>3. Or copy/paste</h1>
|
|
|
|
<textarea rows="30" cols="80">{{ generatedProfile }}</textarea>
|
|
|
|
</div>
|
2020-06-23 17:43:03 +02:00
|
|
|
<script src="js/vue.min.js"></script>
|
2020-06-22 17:24:44 +02:00
|
|
|
<script src="js/main.js"></script>
|
|
|
|
</body>
|
|
|
|
|
|
|
|
</html>
|