42 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			42 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
| 		$(function(){
 | |
| 			jQuery("#photo_original img").Jcrop({
 | |
| 				onChange: showPreview,
 | |
| 				setSelect: [ 0, 0, $("#photo_original img").attr("width"), $("#photo_original img").attr("height") ],
 | |
| 				onSelect: updateCoords,
 | |
| 				aspectRatio: 1,
 | |
| 				boxWidth: 480,
 | |
| 				boxHeight: 480,
 | |
| 				bgColor: '#000',
 | |
| 				bgOpacity: .4
 | |
| 			});
 | |
| 		});
 | |
| 
 | |
| 		function showPreview(coords) {
 | |
| 			var rx = 96 / coords.w;
 | |
| 			var ry = 96 / coords.h;
 | |
| 
 | |
| 			var img_width = $("#photo_original img").attr("width");
 | |
| 			var img_height = $("#photo_original img").attr("height");
 | |
| 
 | |
| 			$('#photo_preview img').css({
 | |
| 				width: Math.round(rx *img_width) + 'px',
 | |
| 				height: Math.round(ry * img_height) + 'px',
 | |
| 				marginLeft: '-' + Math.round(rx * coords.x) + 'px',
 | |
| 				marginTop: '-' + Math.round(ry * coords.y) + 'px'
 | |
| 			});
 | |
| 		};
 | |
| 
 | |
| 		function updateCoords(c) {
 | |
| 			$('#photo_crop_x').val(c.x);
 | |
| 			$('#photo_crop_y').val(c.y);
 | |
| 			$('#photo_crop_w').val(c.w);
 | |
| 			$('#photo_crop_h').val(c.h);
 | |
| 		};
 | |
| 
 | |
| 		function checkCoords() {
 | |
| 			if (parseInt($('#photo_crop_w').val())) return true;
 | |
| 			alert('Please select a crop region then press submit.');
 | |
| 			return false;
 | |
| 		};
 | |
| 
 |