fluffy – Rev 1
?pathlinks?
<!DOCTYPE html>
<html>
<head>
<meta charset='utf-8'>
<title>Fluffy</title>
<script src='/node_modules/jquery/dist/jquery.min.js'></script>
<script src='/js/jquery.svg3dtagcloud.min.js'></script>
<!-- Bootstrap CSS -->
<link href='/node_modules/bootstrap/dist/css/bootstrap.min.css' rel='stylesheet' type='text/css'>
<link href='/node_modules/bootstrap/dist/css/bootstrap-theme.min.css' rel='stylesheet' type='text/css'>
<!-- DropZone -->
<link href='/node_modules/dropzone/dist/dropzone.css' rel='stylesheet' type='text/css'>
<!-- Fluffy style -->
<!-- <link href='https://fonts.googleapis.com/css?family=Oswald&subset=latin,latin-ext' rel='stylesheet' type='text/css'> -->
<link href='/css/style.css' rel='stylesheet' type='text/css'>
</head>
<body>
<div id='cloud'></div>
<!-- Add button -->
<div class="add" data-toggle="modal" data-target="#myModal"></div>
<!-- Modal -->
<div id="myModal" class="modal fade" role="dialog">
<div class="modal-dialog">
<!-- Modal content-->
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal">×</button>
<h4 class="modal-title">Add New Service</h4>
</div>
<div class="modal-body">
<div class="row">
<div class="col-md-6 col-sm-6 col-xs-12">
<form id="serve" data-toggle="validator" role="form" enctype="multipart/form-data" method="POST">
<div class="form-group ">
<label class="control-label requiredField" for="service-url">
Service URL
</label>
<input class="form-control" id="service-url" name="service-url" placeholder="http://myservice.tld/" type="text" required/>
<div class="help-block with-errors">
The URL to link to.
</div>
</div>
<div class="form-group ">
<label class="control-label requiredField" for="service-name">
Service Name
</label>
<input class="form-control" id="service-name" name="service-name" placeholder="My Service" type="text" required/>
<div class="help-block with-errors">
The name that should be used for the service.
</div>
</div>
<div class="form-group">
<label class="control-label requiredField" for="dropzone">
Service Icon
</label>
<div id="service-icon" class="service-icon"></div>
<div id="dropzone-template">
<div class="dz-preview dz-file-preview">
<div class="dz-details">
<img data-dz-thumbnail />
</div>
</div>
</div>
<div class="help-block with-errors">
An icon that should be used to represent the service.
</div>
</div>
<div class="form-group">
<button id="add" type="submit" class="btn btn-primary">Add</button>
</div>
</form>
</div>
</div>
</div>
</div>
</div>
</div>
<!-- Bootstrap JavaScript -->
<script src='/node_modules/bootstrap/dist/js/bootstrap.min.js'></script>
<!-- Bootstrap Validator -->
<script src='/node_modules/bootstrap-validator/dist/validator.min.js'></script>
<!-- DropZone -->
<script src='/node_modules/dropzone/dist/min/dropzone.min.js'></script>
<script>
$(document).ready(function() {
$.getJSON('/data/data.json', (services) => {
// Create and display the tag cloud.
$('#cloud').svg3DTagCloud({
entries: services,
width: '100%',
height: '100%',
radius: '65%',
radiusMin: 75,
bgDraw: true,
bgColor: '#fff',
opacityOver: 1.00,
opacityOut: 0.05,
opacitySpeed: 6,
fov: 800,
speed: 2,
//fontFamily: 'Oswald, Arial, sans-serif',
fontSize: '14px',
fontColor: '#000',
fontWeight: 'bold', //bold
fontStyle: 'normal', //italic
fontStretch: 'normal', //wider, narrower, ultra-condensed, extra-condensed, condensed, semi-condensed, semi-expanded, expanded, extra-expanded, ultra-expanded
fontToUpperCase: true,
//tooltipFontFamily: 'Oswald, Arial, sans-serif',
tooltipFontSize: '14px',
tooltipFontColor: '#000',
tooltipFontWeight: 'bold', //bold
tooltipFontStyle: 'normal', //italic
tooltipFontStretch: 'normal', //wider, narrower, ultra-condensed, extra-condensed, condensed, semi-condensed, semi-expanded, expanded, extra-expanded, ultra-expanded
tooltipFontToUpperCase: false,
tooltipTextAnchor: 'middle',
tooltipDiffX: 0,
tooltipDiffY: 16
});
// Set up dropzone for icon upload.
$('#service-icon').dropzone({
url: '/',
autoProcessQueue: true,
uploadMultiple: false,
maxFiles: 1,
acceptedFiles: 'image/*',
resizeMethod: 'contain',
thumbnailWidth: 64,
thumbnailHeight: 64,
resizeWidth: 64,
resizeHeight: 64,
paramName: "image",
previewTemplate: document.querySelector('#dropzone-template').innerHTML,
renameFile: function(file) {
// set the filename to the name of the service
file.name = $('#service-name').val();
},
init: function() {
// only allow a single icon file to be uploaded
this.on("maxfilesexceeded", function(file) {
this.removeAllFiles();
this.addFile(file);
});
}
});
// Validation process to ensure that all parameters are passed.
$('#form').validator().on('submit', function (e) {
if (e.isDefaultPrevented())
return;
})
});
});
</script>
</body>
Generated by GNU Enscript 1.6.5.90.