diff options
author | Evan Prodromou <evan@controlyourself.ca> | 2009-01-22 12:35:25 +0100 |
---|---|---|
committer | Evan Prodromou <evan@controlyourself.ca> | 2009-01-22 12:35:25 +0100 |
commit | a2a2dd88b5a580715a1b8256a5d8b7743675711c (patch) | |
tree | d9daa558200526d52aec315ccd196bef7dd46d5a /js/jcrop/jquery.Jcrop.go.js | |
parent | 6a3204d08e035812cf111e20f72bf0c7ffb4c601 (diff) | |
parent | f89f6a8eb0d16fc7c4114ba9279466189b857ea6 (diff) |
Merge branch 'master' of evan@dev.controlyourself.ca:/var/www/trunk
Diffstat (limited to 'js/jcrop/jquery.Jcrop.go.js')
-rw-r--r-- | js/jcrop/jquery.Jcrop.go.js | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/js/jcrop/jquery.Jcrop.go.js b/js/jcrop/jquery.Jcrop.go.js new file mode 100644 index 000000000..b2737407b --- /dev/null +++ b/js/jcrop/jquery.Jcrop.go.js @@ -0,0 +1,46 @@ + $(function(){ + var x = ($('#avatar_crop_x').val()) ? $('#avatar_crop_x').val() : 0; + var y = ($('#avatar_crop_y').val()) ? $('#avatar_crop_y').val() : 0; + var w = ($('#avatar_crop_w').val()) ? $('#avatar_crop_w').val() : $("#avatar_original img").attr("width"); + var h = ($('#avatar_crop_h').val()) ? $('#avatar_crop_h').val() : $("#avatar_original img").attr("height"); + + jQuery("#avatar_original img").Jcrop({ + onChange: showPreview, + setSelect: [ x, y, w, h ], + 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 = $("#avatar_original img").attr("width"); + var img_height = $("#avatar_original img").attr("height"); + + $('#avatar_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) { + $('#avatar_crop_x').val(c.x); + $('#avatar_crop_y').val(c.y); + $('#avatar_crop_w').val(c.w); + $('#avatar_crop_h').val(c.h); + }; + + function checkCoords() { + if (parseInt($('#avatar_crop_w').val())) return true; + alert('Please select a crop region then press submit.'); + return false; + }; + |