summaryrefslogtreecommitdiff
path: root/extensions/Vector/modules/ext.vector.expandableSearch.js
blob: 619ea9c2d84ca995e126b029e04a94fe2925ea09 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
/*
 * Expandable search for Vector
 */
jQuery( document ).ready( function( $ ) {
	
	/* Browser Support */

	var map = {
		// Left-to-right languages
		'ltr': {
			// Collapsible Nav is broken in Opera < 9.6 and Konqueror < 4
			'msie': [['>=', 8]],
			'blackberry': false,
			'ipod': false,
			'iphone': false,
			'ps3': false
		},
		// Right-to-left languages
		'rtl': {
			'msie': [['>=', 8]],
			'blackberry': false,
			'ipod': false,
			'iphone': false,
			'ps3': false
		}
	};
	if ( !$.client.test( map ) ) {
		return true;
	}
	
	$( '#searchInput' )
		.expandableField( { 
			'beforeExpand': function( context ) {
				// animate the containers border
				$( this )
					.parent()
					.animate( {
						'borderTopColor': '#a0d8ff',
						'borderLeftColor': '#a0d8ff',
						'borderRightColor': '#a0d8ff',
						'borderBottomColor': '#a0d8ff' }, 'fast' );
			},
			'beforeCondense': function( context ) {
				// animate the containers border
				$( this )
					.parent()
					.animate( {
						'borderTopColor': '#aaaaaa',
						'borderLeftColor': '#aaaaaa',
						'borderRightColor': '#aaaaaa',
						'borderBottomColor': '#aaaaaa' }, 'fast' );
			},
			'afterExpand': function( context ) {
				//trigger the collapsible tabs resize handler
				if ( typeof $.collapsibleTabs != 'undefined' ){
					$.collapsibleTabs.handleResize();
				}
			},
			'afterCondense': function( context ) {
				//trigger the collapsible tabs resize handler
				if ( typeof $.collapsibleTabs != 'undefined' ){
					$.collapsibleTabs.handleResize();
				}
			},
			'expandToLeft': ! $( 'body' ).is( '.rtl' )
		} )
		.css( 'float', $( 'body' ).is( '.rtl' ) ? 'right' : 'left' )
		.siblings( 'button' )
		.css( 'float', $( 'body' ).is( '.rtl' ) ? 'right' : 'left' );
} );