UNCLASSIFIED

Commit 0cca8a82 authored by Static Sites Deploy Bot's avatar Static Sites Deploy Bot
Browse files

Deploying naval-letter v0.0.1 to static sites hosting.

parent a4fbe3c3
<html>
<head>
<!--<script src="../assets/js/naval_letter.js"></script>-->
<script src="js/bundle.js"></script>
<script src="js/filesaver.js"></script>
<!-- Bootstrap -->
<link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.5.2/css/bootstrap.min.css" integrity="sha384-JcKb8q3iqJ61gNV9KGb8thSsNjpSL0n8PARn9HuZOnIxN0hoP+VmmDGMN5t9UJ0Z" crossorigin="anonymous">
</head>
<body style="background-color:#3b3b3b;">
<div class="container" style="background-color: slategray">
<img src="images/MarineCoders.png" class="img-fluid" alt="Responsive image">
<h1 style="text-align:center">Naval Letter Format Generator</h1>
<fieldset>
<legend > File Name Information: </legend>
<label>
<div class="input-group mb-3">
<div class="input-group-prepend">
<span class="input-group-text" id="basic-addon3">Enter Your Desired Filename:</span>
<input class="form-control" type="text" name="Filename" id="filename" size="30" maxlength="30">
</div>
</div>
</label>
<br />
</fieldset>
<br />
<!-- Destination e-mail address? -->
<!-- Header Address Information -->
<fieldset>
<legend > Address Information: </legend>
<label>
<div class="input-group mb-3">
<div class="input-group-prepend">
<span class="input-group-text" id="basic-addon3">Line 1 (Unit Name):</span>
<input class="form-control" type="text" name="line1" id="line1" size="30" >
</div>
</div>
</label>
<br/>
<label>
<div class="input-group mb-3">
<div class="input-group-prepend">
<span class="input-group-text" id="basic-addon3">Line 2 (Address Line 1):</span>
<input class="form-control" type="text" name="line2" id="line2" size="30" >
</div>
</div>
</label>
<br/>
<label>
<div class="input-group mb-3">
<div class="input-group-prepend">
<span class="input-group-text" id="basic-addon3">Line 3 (Address Line 2):</span>
<input class="form-control" type="text" name="line3" id="line3" size="30" >
</div>
</div>
</label>
</fieldset>
<br />
<!-- Header Information -->
<fieldset>
<legend > Header Information: </legend>
<label>
<div class="input-group mb-3">
<div class="input-group-prepend">
<span class="input-group-text" id="basic-addon3">Enter your SSIC:</span>
<input class="form-control" type="text" name="SSIC" id="ssic" size="30" maxlength="4">
</div>
</div>
</label>
<br/>
<label>
<div class="input-group mb-3">
<div class="input-group-prepend">
<span class="input-group-text" id="basic-addon3">Enter Your Reply Code:</span>
<input class="form-control" type="text" name="ReplyCode" id="reply" size="30" maxlength="13">
</div>
</div>
</label>
<br/>
<label>
<div class="input-group mb-3">
<div class="input-group-prepend">
<span class="input-group-text" id="basic-addon3">Enter The Date (DD Mmm YY):</span>
<input class="form-control" type="text" name="Date" id="date" size="30" maxlength="9">
</div>
</div>
</label>
</fieldset>
<br />
<!-- Reply Information -->
<fieldset>
<legend > Reply Block: </legend>
<label>
<div class="input-group mb-3">
<div class="input-group-prepend">
<span class="input-group-text" id="basic-addon3">From (Full Identifier or Billet and Unit Name):</span>
<input class="form-control" type="text" name="From" id="from" size="60" maxlength="150">
</div>
</div>
</label>
<br/>
<label>
<div class="input-group mb-3">
<div class="input-group-prepend">
<span class="input-group-text" id="basic-addon3">To (Billet and unit Name or identifier here):</span>
<input class="form-control" type="text" name="To" id="to" size="60" maxlength="150">
</div>
</div>
</label>
<br/>
<label>
<div class="input-group mb-3">
<div class="input-group-prepend">
<span class="input-group-text" id="basic-addon3">Enter The Subject (ALWAYS IN ALL CAPS):</span>
<input class="form-control" type="text" name="Subj" id="subj" size="60" maxlength="150">
</div>
</div>
</label>
</fieldset>
<br />
<!-- Optional Portions -->
<fieldset>
<legend > Optional Items: </legend>
<label >Do you have a VIA?</label>
<input type="radio" name="ifVia" id="rad1" value="yes" onclick="generatorBundle.showHideDiv('rad1','ViaTextBoxContainer')"> Yes </label>
<input type="radio" name="ifVia" checked="checked" id="rad2" value="no" onclick="generatorBundle.showHideDiv('rad1','ViaTextBoxContainer')"> No</label>
<div style="display: none;" class="label" id="ViaTextBoxContainer">
<label >
Enter The Via (Title, name of activity (Code), location when needed):
</label>
<input id="btnAdd" type="button" value="Add Via" onclick="generatorBundle.addVia()" />
<input class="form-control" name = "ViaTextBox" size="60" type="text"/>
</br>
</div>
</br>
<label >Do you have References ?</label>
<input type="radio" name="ifRef" id="rad3" value="yes" onclick="generatorBundle.showHideDiv('rad3','RefTextBoxContainer')"> Yes </label>
<input type="radio" name="ifRef" checked="checked" id="rad4" value="no" onclick="generatorBundle.showHideDiv('rad3','RefTextBoxContainer')"> No</label>
<div style="display: none;" class="label" id="RefTextBoxContainer">
<label >
Enter The References (ALWAYS IN CAPS, ABBREVIATIONS ALLOWED):
<input id="btnAdd" type="button" value="Add Ref" onclick="generatorBundle.addRef()" />
<input class="form-control" name = "RefTextBox" size="60" type="text"/>
</br>
</div>
<br />
<label >Do you have Enclosures?</label>
<input type="radio" name="ifEncl" id="rad5" value="yes" onclick="generatorBundle.showHideDiv('rad5','EnclTextBoxContainer')"> Yes </label>
<input type="radio" name="ifEncl" checked="checked" id="rad6" value="no" onclick="generatorBundle.showHideDiv('rad5','EnclTextBoxContainer')"> No</label>
<div style="display: none;" class="label" id="EnclTextBoxContainer">
<label >
Enter The Enclosures (ALWAYS IN CAPS, ABBREVIATIONS ALLOWED):
<input id="btnAdd" type="button" value="Add Encl" onclick="generatorBundle.addEnc()" />
<input class="form-control" name = "EnclTextBox" size="60" type="text"/>
</br>
</div>
<br />
</fieldset>
<br />
<!-- Body of the message -->
<fieldset>
<legend > Body Block: </legend>
<div>
<label for = "body">
Enter a body paragraph:
</label>
</div>
<div class="label" id="BodyTextBoxContainer">
<textarea class="form-control" rows = "8" cols = "40" id="BodyBlocks" name="BodyBlocks"></textarea>
<label for = "bodylvl">
Select the body level:
</label>
<select id="BodyLevel" name="BodyLevel" >
<option SELECTED value=1>1</option>
<option value=2>2</option>
<option value=3>3</option>
</select>
<!--
<textarea rows = "8" cols = "80" id="BodyBlocks" name="BodyBlocks" value = "' + value + '" >
</textarea>
<label for = "bodylvl"> Select the body level: </label>
<select id="BodyLevel" name="BodyLevel" >
<option SELECTED value=1>1</option>
<option value=2>2</option>
<option value=3>3</option>
</select>
<input type="button" value="Remove Paragraph" onclick = "RemoveBodyTextBox(this)" >
-->
</br>
</div>
</br>
<input id="btnAdd" type="button" value="Add Another Body Paragraph" onclick="generatorBundle.addBody()" />
<br />
</fieldset>
<br />
<fieldset>
<legend > Closing Block: </legend>
</br>
<div>
<label >
<div class="input-group mb-3">
<div class="input-group-prepend">
<span class="input-group-text" id="basic-addon3">Enter The Signature (FI. MI. LNAME):</span>
<input class="form-control" type="text" name="Sig" id="sig" size="60" maxlength="150">
</div>
</div>
</label>
</div>
</br>
<label >Do you have Copy To?</label>
<input type="radio" name="ifCopy" id="rad7" value="yes" onclick="generatorBundle.showHideDiv('rad7','CopyTextBoxContainer')"> Yes </label>
<input type="radio" name="ifCopy" checked="checked" id="rad8" value="no" onclick="generatorBundle.showHideDiv('rad7','CopyTextBoxContainer')"> No</label>
<div style="display: none;" class="label" id="CopyTextBoxContainer">
<label >
Enter An Adressee (Billet and unit Name or identifier here):
<input id="btnAdd" type="button" value="Add Copy To" onclick="generatorBundle.addCopy()" />
<input class="form-control" name = "CopyTextBox" size="60" type="text"/>
</br>
</div>
<br />
</fieldset>
<br />
<button type="button" onclick="generatorBundle.generateDoc()">Click to generate document</button>
</body>
</html>
\ No newline at end of file
This diff is collapsed.
/* FileSaver.js
* A saveAs() FileSaver implementation.
* 1.3.2
* 2016-06-16 18:25:19
*
* By Eli Grey, http://eligrey.com
* License: MIT
* See https://github.com/eligrey/FileSaver.js/blob/master/LICENSE.md
*/
/*global self */
/*jslint bitwise: true, indent: 4, laxbreak: true, laxcomma: true, smarttabs: true, plusplus: true */
/*! @source http://purl.eligrey.com/github/FileSaver.js/blob/master/FileSaver.js */
var saveAs = saveAs || (function(view) {
"use strict";
// IE <10 is explicitly unsupported
if (typeof view === "undefined" || typeof navigator !== "undefined" && /MSIE [1-9]\./.test(navigator.userAgent)) {
return;
}
var
doc = view.document
// only get URL when necessary in case Blob.js hasn't overridden it yet
, get_URL = function() {
return view.URL || view.webkitURL || view;
}
, save_link = doc.createElementNS("http://www.w3.org/1999/xhtml", "a")
, can_use_save_link = "download" in save_link
, click = function(node) {
var event = new MouseEvent("click");
node.dispatchEvent(event);
}
, is_safari = /constructor/i.test(view.HTMLElement) || view.safari
, is_chrome_ios =/CriOS\/[\d]+/.test(navigator.userAgent)
, throw_outside = function(ex) {
(view.setImmediate || view.setTimeout)(function() {
throw ex;
}, 0);
}
, force_saveable_type = "application/octet-stream"
// the Blob API is fundamentally broken as there is no "downloadfinished" event to subscribe to
, arbitrary_revoke_timeout = 1000 * 40 // in ms
, revoke = function(file) {
var revoker = function() {
if (typeof file === "string") { // file is an object URL
get_URL().revokeObjectURL(file);
} else { // file is a File
file.remove();
}
};
setTimeout(revoker, arbitrary_revoke_timeout);
}
, dispatch = function(filesaver, event_types, event) {
event_types = [].concat(event_types);
var i = event_types.length;
while (i--) {
var listener = filesaver["on" + event_types[i]];
if (typeof listener === "function") {
try {
listener.call(filesaver, event || filesaver);
} catch (ex) {
throw_outside(ex);
}
}
}
}
, auto_bom = function(blob) {
// prepend BOM for UTF-8 XML and text/* types (including HTML)
// note: your browser will automatically convert UTF-16 U+FEFF to EF BB BF
if (/^\s*(?:text\/\S*|application\/xml|\S*\/\S*\+xml)\s*;.*charset\s*=\s*utf-8/i.test(blob.type)) {
return new Blob([String.fromCharCode(0xFEFF), blob], {type: blob.type});
}
return blob;
}
, FileSaver = function(blob, name, no_auto_bom) {
if (!no_auto_bom) {
blob = auto_bom(blob);
}
// First try a.download, then web filesystem, then object URLs
var
filesaver = this
, type = blob.type
, force = type === force_saveable_type
, object_url
, dispatch_all = function() {
dispatch(filesaver, "writestart progress write writeend".split(" "));
}
// on any filesys errors revert to saving with object URLs
, fs_error = function() {
if ((is_chrome_ios || (force && is_safari)) && view.FileReader) {
// Safari doesn't allow downloading of blob urls
var reader = new FileReader();
reader.onloadend = function() {
var url = is_chrome_ios ? reader.result : reader.result.replace(/^data:[^;]*;/, 'data:attachment/file;');
var popup = view.open(url, '_blank');
if(!popup) view.location.href = url;
url=undefined; // release reference before dispatching
filesaver.readyState = filesaver.DONE;
dispatch_all();
};
reader.readAsDataURL(blob);
filesaver.readyState = filesaver.INIT;
return;
}
// don't create more object URLs than needed
if (!object_url) {
object_url = get_URL().createObjectURL(blob);
}
if (force) {
view.location.href = object_url;
} else {
var opened = view.open(object_url, "_blank");
if (!opened) {
// Apple does not allow window.open, see https://developer.apple.com/library/safari/documentation/Tools/Conceptual/SafariExtensionGuide/WorkingwithWindowsandTabs/WorkingwithWindowsandTabs.html
view.location.href = object_url;
}
}
filesaver.readyState = filesaver.DONE;
dispatch_all();
revoke(object_url);
}
;
filesaver.readyState = filesaver.INIT;
if (can_use_save_link) {
object_url = get_URL().createObjectURL(blob);
setTimeout(function() {
save_link.href = object_url;
save_link.download = name;
click(save_link);
dispatch_all();
revoke(object_url);
filesaver.readyState = filesaver.DONE;
});
return;
}
fs_error();
}
, FS_proto = FileSaver.prototype
, saveAs = function(blob, name, no_auto_bom) {
return new FileSaver(blob, name || blob.name || "download", no_auto_bom);
}
;
// IE 10+ (native saveAs)
if (typeof navigator !== "undefined" && navigator.msSaveOrOpenBlob) {
return function(blob, name, no_auto_bom) {
name = name || blob.name || "download";
if (!no_auto_bom) {
blob = auto_bom(blob);
}
return navigator.msSaveOrOpenBlob(blob, name);
};
}
FS_proto.abort = function(){};
FS_proto.readyState = FS_proto.INIT = 0;
FS_proto.WRITING = 1;
FS_proto.DONE = 2;
FS_proto.error =
FS_proto.onwritestart =
FS_proto.onprogress =
FS_proto.onwrite =
FS_proto.onabort =
FS_proto.onerror =
FS_proto.onwriteend =
null;
return saveAs;
}(
typeof self !== "undefined" && self
|| typeof window !== "undefined" && window
|| this.content
));
// `self` is undefined in Firefox for Android content script context
// while `this` is nsIContentFrameMessageManager
// with an attribute `content` that corresponds to the window
if (typeof module !== "undefined" && module.exports) {
module.exports.saveAs = saveAs;
} else if ((typeof define !== "undefined" && define !== null) && (define.amd !== null)) {
define("FileSaver.js", function() {
return saveAs;
});
}
!function(e){var t={};function r(n){if(t[n])return t[n].exports;var o=t[n]={i:n,l:!1,exports:{}};return e[n].call(o.exports,o,o.exports,r),o.l=!0,o.exports}r.m=e,r.c=t,r.d=function(e,t,n){r.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:n})},r.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},r.t=function(e,t){if(1&t&&(e=r(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var n=Object.create(null);if(r.r(n),Object.defineProperty(n,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var o in e)r.d(n,o,function(t){return e[t]}.bind(null,o));return n},r.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return r.d(t,"a",t),t},r.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},r.p="",r(r.s=0)}([function(e,t){}]);
\ No newline at end of file
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment