Croppie position issue
by Guruprasad Rao
HTML
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css">
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js"></script>
<link rel="stylesheet" href="http://foliotek.github.io/Croppie/croppie.css">
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.6.1/css/font-awesome.min.css">
<script src="http://foliotek.github.io/Croppie/croppie.js"></script>
<form action="test-image.php" id="form" method="post">
<input type="file" id="upload" value="Choose a file" onchange="clearImage(this)" />
<div id="upload-demo"></div>
<input type="hidden" id="imagebase64" name="imagebase64">
<a href="#" class="upload-result">Send</a>
</form>
JavaScript
var $uploadCrop;
var opts = {
viewport: {
width: 200,
height: 200,
type: 'circle'
},
boundary: {
width: 300,
height: 300
}
};
$(document).ready(function() {
function readFile(input) {
if (input.files && input.files[0]) {
var reader = new FileReader();
reader.onload = function(e) {
$uploadCrop.croppie('bind', {
url: e.target.result
});
$('.upload-demo').addClass('ready');
}
reader.readAsDataURL(input.files[0]);
}
}
$uploadCrop = $('#upload-demo').croppie(opts);
$('#upload').on('change', function() {
readFile(this);
});
$('.upload-result').on('click', function(ev) {
$uploadCrop.croppie('result', {
type: 'canvas',
size: 'original'
}).then(function(resp) {
$('#imagebase64').val(resp);
$('#form').submit();
});
});
});
function clearImage(ctrl) {
if ($(ctrl).val() == "") {
$('#upload-demo').croppie('destroy');
$uploadCrop=$('#upload-demo').croppie(opts);
}
}