mirror of
https://github.com/friendica/friendica
synced 2025-04-25 19:10:11 +00:00
Move js/ folder under view/
- Move library/cropper to view/js/cropper - Move library/jquery-textcomplete to view/js/jquery-textcomplete
This commit is contained in:
parent
a05eeeb49c
commit
cd392db078
72 changed files with 51 additions and 51 deletions
203
view/js/cropper/tests/example-DynamicImage.htm
Normal file
203
view/js/cropper/tests/example-DynamicImage.htm
Normal file
|
@ -0,0 +1,203 @@
|
|||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
||||
<head>
|
||||
<meta http-equiv="Content-type" content="text/html; charset=utf-8" />
|
||||
<meta http-equiv="Content-Language" content="en-us" />
|
||||
<title>Dynamic image test</title>
|
||||
<script src="../lib/prototype.js" type="text/javascript"></script>
|
||||
<script src="../lib/scriptaculous.js?load=builder,dragdrop" type="text/javascript"></script>
|
||||
<script src="../cropper.js" type="text/javascript"></script>
|
||||
|
||||
|
||||
<script type="text/javascript" charset="utf-8">
|
||||
|
||||
/**
|
||||
* A little manager that allows us to swap the image dynamically
|
||||
*
|
||||
*/
|
||||
var CropImageManager = {
|
||||
/**
|
||||
* Holds the current Cropper.Img object
|
||||
* @var obj
|
||||
*/
|
||||
curCrop: null,
|
||||
|
||||
/**
|
||||
* Initialises the cropImageManager
|
||||
*
|
||||
* @access public
|
||||
* @return void
|
||||
*/
|
||||
init: function() {
|
||||
this.attachCropper();
|
||||
},
|
||||
|
||||
/**
|
||||
* Handles the changing of the select to change the image, the option value
|
||||
* is a pipe seperated list of imgSrc|width|height
|
||||
*
|
||||
* @access public
|
||||
* @param obj event
|
||||
* @return void
|
||||
*/
|
||||
onChange: function( e ) {
|
||||
var vals = $F( Event.element( e ) ).split('|');
|
||||
this.setImage( vals[0], vals[1], vals[2] );
|
||||
},
|
||||
|
||||
/**
|
||||
* Sets the image within the element & attaches/resets the image cropper
|
||||
*
|
||||
* @access private
|
||||
* @param string Source path of new image
|
||||
* @param int Width of new image in pixels
|
||||
* @param int Height of new image in pixels
|
||||
* @return void
|
||||
*/
|
||||
setImage: function( imgSrc, w, h ) {
|
||||
$PR( 'testImage' ).src = imgSrc;
|
||||
$PR( 'testImage' ).width = w;
|
||||
$PR( 'testImage' ).height = h;
|
||||
this.attachCropper();
|
||||
},
|
||||
|
||||
/**
|
||||
* Attaches/resets the image cropper
|
||||
*
|
||||
* @access private
|
||||
* @return void
|
||||
*/
|
||||
attachCropper: function() {
|
||||
if( this.curCrop == null ) this.curCrop = new Cropper.Img( 'testImage', { onEndCrop: onEndCrop } );
|
||||
else this.curCrop.reset();
|
||||
},
|
||||
|
||||
/**
|
||||
* Removes the cropper
|
||||
*
|
||||
* @access public
|
||||
* @return void
|
||||
*/
|
||||
removeCropper: function() {
|
||||
if( this.curCrop != null ) {
|
||||
this.curCrop.remove();
|
||||
}
|
||||
},
|
||||
|
||||
/**
|
||||
* Resets the cropper, either re-setting or re-applying
|
||||
*
|
||||
* @access public
|
||||
* @return void
|
||||
*/
|
||||
resetCropper: function() {
|
||||
this.attachCropper();
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
// setup the callback function
|
||||
function onEndCrop( coords, dimensions ) {
|
||||
$PR( 'x1' ).value = coords.x1;
|
||||
$PR( 'y1' ).value = coords.y1;
|
||||
$PR( 'x2' ).value = coords.x2;
|
||||
$PR( 'y2' ).value = coords.y2;
|
||||
$PR( 'width' ).value = dimensions.width;
|
||||
$PR( 'height' ).value = dimensions.height;
|
||||
}
|
||||
|
||||
// basic example
|
||||
Event.observe(
|
||||
window,
|
||||
'load',
|
||||
function() {
|
||||
CropImageManager.init();
|
||||
Event.observe( $PR('removeCropper'), 'click', CropImageManager.removeCropper.bindAsEventListener( CropImageManager ), false );
|
||||
Event.observe( $PR('resetCropper'), 'click', CropImageManager.resetCropper.bindAsEventListener( CropImageManager ), false );
|
||||
Event.observe( $PR('imageChoice'), 'change', CropImageManager.onChange.bindAsEventListener( CropImageManager ), false );
|
||||
}
|
||||
);
|
||||
|
||||
|
||||
/*
|
||||
if( typeof(dump) != 'function' ) {
|
||||
Debug.init(true, '/');
|
||||
|
||||
function dump( msg ) {
|
||||
Debug.raise( msg );
|
||||
};
|
||||
} else dump( '---------------------------------------\n' );
|
||||
*/
|
||||
|
||||
</script>
|
||||
<link rel="stylesheet" type="text/css" href="debug.css" media="all" />
|
||||
<style type="text/css">
|
||||
label {
|
||||
clear: left;
|
||||
margin-left: 50px;
|
||||
float: left;
|
||||
width: 5em;
|
||||
}
|
||||
|
||||
html, body {
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
#testWrap {
|
||||
margin: 20px 0 0 50px; /* Just while testing, to make sure we return the correct positions for the image & not the window */
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
<h2>Dynamic image test</h2>
|
||||
<p>
|
||||
Test of dynamically changing images or removing & re-applying the cropper
|
||||
</p>
|
||||
|
||||
<div id="testWrap">
|
||||
<img src="castle.jpg" alt="test image" id="testImage" width="500" height="333" />
|
||||
</div>
|
||||
|
||||
<p>
|
||||
<label for="imageChoice">image:</label>
|
||||
<select name="imageChoice" id="imageChoice">
|
||||
<option value="castle.jpg|500|333">Castle</option>
|
||||
<option value="poppy.jpg|311|466">Flower</option>
|
||||
</select>
|
||||
</p>
|
||||
|
||||
<p>
|
||||
<input type="button" id="removeCropper" value="Remove Cropper" />
|
||||
<input type="button" id="resetCropper" value="Reset Cropper" />
|
||||
</p>
|
||||
|
||||
|
||||
<p>
|
||||
<label for="x1">x1:</label>
|
||||
<input type="text" name="x1" id="x1" />
|
||||
</p>
|
||||
<p>
|
||||
<label for="y1">y1:</label>
|
||||
<input type="text" name="y1" id="y1" />
|
||||
</p>
|
||||
<p>
|
||||
<label for="x2">x2:</label>
|
||||
<input type="text" name="x2" id="x2" />
|
||||
</p>
|
||||
<p>
|
||||
<label for="y2">y2:</label>
|
||||
<input type="text" name="y2" id="y2" />
|
||||
</p>
|
||||
<p>
|
||||
<label for="width">width:</label>
|
||||
<input type="text" name="width" id="width" />
|
||||
</p>
|
||||
<p>
|
||||
<label for="height">height</label>
|
||||
<input type="text" name="height" id="height" />
|
||||
</p>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
|
||||
|
Loading…
Add table
Add a link
Reference in a new issue