View difference between Paste ID: 65i9GSTH and DqrsMUF3
SHOW: | | - or go back to the newest paste.
1
// AJAX Functions
2
var jq = jQuery;
3
4
// Global variable to prevent multiple AJAX requests
5
var bp_ajax_request = null;
6
7
jq(document).ready( function() {
8
	/**** Page Load Actions *******************************************************/
9
10
	/* Hide Forums Post Form */
11
	if ( '-1' == window.location.search.indexOf('new') && jq('div.forums').length )
12
		jq('div#new-topic-post').hide();
13
	else
14
		jq('div#new-topic-post').show();
15
16
	/* Activity filter and scope set */
17
	bp_init_activity();
18
19
	/* Object filter and scope set. */
20
	var objects = [ 'members', 'groups', 'blogs', 'forums' ];
21
	bp_init_objects( objects );
22
23
	/* @mention Compose Scrolling */
24
	if ( jq.query.get('r') && jq('textarea#whats-new').length ) {
25
		jq('#whats-new-options').animate({height:'40px'});
26
		jq("form#whats-new-form textarea").animate({height:'50px'});
27
		jq.scrollTo( jq('textarea#whats-new'), 500, { offset:-125, easing:'easeOutQuad' } );
28
		jq('textarea#whats-new').focus();
29
	}
30
31
	/**** Activity Posting ********************************************************/
32
33
	/* Textarea focus */
34
	jq('#whats-new').focus( function(){
35
		jq("#whats-new-options").animate({height:'40px'});
36
		jq("form#whats-new-form textarea").animate({height:'50px'});
37
		jq("#aw-whats-new-submit").prop("disabled", false);
38
	});
39
40
	/* New posts */
41
	jq("input#aw-whats-new-submit").click( function() {
42
		var button = jq(this);
43
		var form = button.parent().parent().parent().parent();
44
45
		form.children().each( function() {
46
			if ( jq.nodeName(this, "textarea") || jq.nodeName(this, "input") )
47
				jq(this).prop( 'disabled', true );
48
		});
49
50
		/* Remove any errors */
51
		jq('div.error').remove();
52
		button.addClass('loading');
53
		button.prop('disabled', true);
54
55
		/* Default POST values */
56
		var object = '';
57
		var item_id = jq("#whats-new-post-in").val();
58
		var content = jq("textarea#whats-new").val();
59
60
		/* Set object for non-profile posts */
61
		if ( item_id > 0 ) {
62
			object = jq("#whats-new-post-object").val();
63
		}
64
65
		jq.post( ajaxurl, {
66
			action: 'post_update',
67
			'cookie': encodeURIComponent(document.cookie),
68
			'_wpnonce_post_update': jq("input#_wpnonce_post_update").val(),
69
			'content': content,
70
			'object': object,
71
			'item_id': item_id
72
		},
73
		function(response) {
74
75
			form.children().each( function() {
76
				if ( jq.nodeName(this, "textarea") || jq.nodeName(this, "input") ) {
77
					jq(this).prop( 'disabled', false );
78
				}
79
			});
80
81
			/* Check for errors and append if found. */
82
			if ( response[0] + response[1] == '-1' ) {
83
				form.prepend( response.substr( 2, response.length ) );
84
				jq( 'form#' + form.attr('id') + ' div.error').hide().fadeIn( 200 );
85
			} else {
86
				if ( 0 == jq("ul.activity-list").length ) {
87
					jq("div.error").slideUp(100).remove();
88
					jq("div#message").slideUp(100).remove();
89
					jq("div.activity").append( '<ul id="activity-stream" class="activity-list item-list">' );
90
				}
91
92
				jq("ul#activity-stream").prepend(response);
93
				jq("ul#activity-stream li:first").addClass('new-update');
94
95
				if ( 0 != jq("div#latest-update").length ) {
96
					var l = jq("ul#activity-stream li.new-update .activity-content .activity-inner p").html();
97
					var v = jq("ul#activity-stream li.new-update .activity-content .activity-header p a.view").attr('href');
98
99
					var ltext = jq("ul#activity-stream li.new-update .activity-content .activity-inner p").text();
100
101
					var u = '';
102
					if ( ltext != '' )
103
						u = '&quot;' + l + '&quot; ';
104
105
					u += '<a href="' + v + '" rel="nofollow">' + BP_DTheme.view + '</a>';
106
107
					jq("div#latest-update").slideUp(300,function(){
108
						jq("div#latest-update").html( u );
109
						jq("div#latest-update").slideDown(300);
110
					});
111
				}
112
113
				jq("li.new-update").hide().slideDown( 300 );
114
				jq("li.new-update").removeClass( 'new-update' );
115
				jq("textarea#whats-new").val('');
116
			}
117
118
			jq("#whats-new-options").animate({height:'0px'});
119
			jq("form#whats-new-form textarea").animate({height:'20px'});
120
			jq("#aw-whats-new-submit").prop("disabled", true).removeClass('loading');
121
		});
122
123
		return false;
124
	});
125
126
	/* List tabs event delegation */
127
	jq('div.activity-type-tabs').click( function(event) {
128
		var target = jq(event.target).parent();
129
130
		if ( event.target.nodeName == 'STRONG' || event.target.nodeName == 'SPAN' )
131
			target = target.parent();
132
		else if ( event.target.nodeName != 'A' )
133
			return false;
134
135
		/* Reset the page */
136
		jq.cookie( 'bp-activity-oldestpage', 1, {path: '/'} );
137
138
		/* Activity Stream Tabs */
139
		var scope = target.attr('id').substr( 9, target.attr('id').length );
140
		var filter = jq("#activity-filter-select select").val();
141
142
		if ( scope == 'mentions' )
143
			jq( 'li#' + target.attr('id') + ' a strong' ).remove();
144
145
		bp_activity_request(scope, filter);
146
147
		return false;
148
	});
149
150
	/* Activity filter select */
151
	jq('#activity-filter-select select').change( function() {
152
		var selected_tab = jq( 'div.activity-type-tabs li.selected' );
153
154
		if ( !selected_tab.length )
155
			var scope = null;
156
		else
157
			var scope = selected_tab.attr('id').substr( 9, selected_tab.attr('id').length );
158
159
		var filter = jq(this).val();
160
161
		bp_activity_request(scope, filter);
162
163
		return false;
164
	});
165
166
	/* Stream event delegation */
167
	jq('div.activity').click( function(event) {
168
		var target = jq(event.target);
169
170
		/* Favoriting activity stream items */
171
		if ( target.hasClass('fav') || target.hasClass('unfav') ) {
172
			var type = target.hasClass('fav') ? 'fav' : 'unfav';
173
			var parent = target.parent().parent().parent();
174
			var parent_id = parent.attr('id').substr( 9, parent.attr('id').length );
175
176
			target.addClass('loading');
177
178
			jq.post( ajaxurl, {
179
				action: 'activity_mark_' + type,
180
				'cookie': encodeURIComponent(document.cookie),
181
				'id': parent_id
182
			},
183
			function(response) {
184
				target.removeClass('loading');
185
186
				target.fadeOut( 100, function() {
187
					jq(this).html(response);
188
					jq(this).attr('title', 'fav' == type ? BP_DTheme.remove_fav : BP_DTheme.mark_as_fav);
189
					jq(this).fadeIn(100);
190
				});
191
192
				if ( 'fav' == type ) {
193
					if ( !jq('div.item-list-tabs li#activity-favorites').length )
194
						jq('div.item-list-tabs ul li#activity-mentions').before( '<li id="activity-favorites"><a href="#">' + BP_DTheme.my_favs + ' <span>0</span></a></li>');
195
196
					target.removeClass('fav');
197
					target.addClass('unfav');
198
199
					jq('div.item-list-tabs ul li#activity-favorites span').html( Number( jq('div.item-list-tabs ul li#activity-favorites span').html() ) + 1 );
200
				} else {
201
					target.removeClass('unfav');
202
					target.addClass('fav');
203
204
					jq('div.item-list-tabs ul li#activity-favorites span').html( Number( jq('div.item-list-tabs ul li#activity-favorites span').html() ) - 1 );
205
206
					if ( !Number( jq('div.item-list-tabs ul li#activity-favorites span').html() ) ) {
207
						if ( jq('div.item-list-tabs ul li#activity-favorites').hasClass('selected') )
208
							bp_activity_request( null, null );
209
210
						jq('div.item-list-tabs ul li#activity-favorites').remove();
211
					}
212
				}
213
214
				if ( 'activity-favorites' == jq( 'div.item-list-tabs li.selected').attr('id') )
215
					target.parent().parent().parent().slideUp(100);
216
			});
217
218
			return false;
219
		}
220
221
		/* Delete activity stream items */
222
		if ( target.hasClass('delete-activity') ) {
223
			var li        = target.parents('div.activity ul li');
224
			var id        = li.attr('id').substr( 9, li.attr('id').length );
225
			var link_href = target.attr('href');
226
			var nonce     = link_href.split('_wpnonce=');
227
228
			nonce = nonce[1];
229
230
			target.addClass('loading');
231
232
			jq.post( ajaxurl, {
233
				action: 'delete_activity',
234
				'cookie': encodeURIComponent(document.cookie),
235
				'id': id,
236
				'_wpnonce': nonce
237
			},
238
			function(response) {
239
240
				if ( response[0] + response[1] == '-1' ) {
241
					li.prepend( response.substr( 2, response.length ) );
242
					li.children('div#message').hide().fadeIn(300);
243
				} else {
244
					li.slideUp(300);
245
				}
246
			});
247
248
			return false;
249
		}
250
251
		/* Load more updates at the end of the page */
252
		if ( target.parent().hasClass('load-more') ) {
253
			jq("#content li.load-more").addClass('loading');
254
255
			if ( null == jq.cookie('bp-activity-oldestpage') )
256
				jq.cookie('bp-activity-oldestpage', 1, {path: '/'} );
257
258
			var oldest_page = ( jq.cookie('bp-activity-oldestpage') * 1 ) + 1;
259
                        var search_terms=jq("#search-terms").val();
260
                        search_terms=search_terms?search_terms:'';
261
                        
262
			jq.post( ajaxurl, {
263-
				'page': oldest_page
263+
264
				'cookie': encodeURIComponent(document.cookie),
265
				'page': oldest_page,
266
                                'search_terms':search_terms
267
			}
268
			,
269
			function(response)
270
			{
271
				jq("#content li.load-more").removeClass('loading');
272
				jq.cookie( 'bp-activity-oldestpage', oldest_page, {path: '/'} );
273
				jq("#content ul.activity-list").append(response.contents);
274
275
				target.parent().hide();
276
			}, 'json' );
277
278
			return false;
279
		}
280
	});
281
282
	// Activity "Read More" links
283
	jq('.activity-read-more a').live('click', function(event) {
284
		var target = jq(event.target);
285
		var link_id = target.parent().attr('id').split('-');
286
		var a_id = link_id[3];
287
		var type = link_id[0]; /* activity or acomment */
288
289
		var inner_class = type == 'acomment' ? 'acomment-content' : 'activity-inner';
290
		var a_inner = jq('li#' + type + '-' + a_id + ' .' + inner_class + ':first' );
291
		jq(target).addClass('loading');
292
293
		jq.post( ajaxurl, {
294
			action: 'get_single_activity_content',
295
			'activity_id': a_id
296
		},
297
		function(response) {
298
			jq(a_inner).slideUp(300).html(response).slideDown(300);
299
		});
300
301
		return false;
302
	});
303
304
	/**** Activity Comments *******************************************************/
305
306
	/* Hide all activity comment forms */
307
	jq('form.ac-form').hide();
308
309
	/* Hide excess comments */
310
	if ( jq('div.activity-comments').length )
311
		bp_dtheme_hide_comments();
312
313
	/* Activity list event delegation */
314
	jq('div.activity').click( function(event) {
315
		var target = jq(event.target);
316
317
		/* Comment / comment reply links */
318
		if ( target.hasClass('acomment-reply') || target.parent().hasClass('acomment-reply') ) {
319
			if ( target.parent().hasClass('acomment-reply') )
320
				target = target.parent();
321
322
			var id = target.attr('id');
323
			ids = id.split('-');
324
325
			var a_id = ids[2]
326
			var c_id = target.attr('href').substr( 10, target.attr('href').length );
327
			var form = jq( '#ac-form-' + a_id );
328
329
			form.css( 'display', 'none' );
330
			form.removeClass('root');
331
			jq('.ac-form').hide();
332
333
			/* Hide any error messages */
334
			form.children('div').each( function() {
335
				if ( jq(this).hasClass( 'error' ) )
336
					jq(this).hide();
337
			});
338
339
			if ( ids[1] != 'comment' ) {
340
				jq('div.activity-comments li#acomment-' + c_id).append( form );
341
			} else {
342
				jq('li#activity-' + a_id + ' div.activity-comments').append( form );
343
			}
344
345
	 		if ( form.parent().hasClass( 'activity-comments' ) )
346
				form.addClass('root');
347
348
			form.slideDown( 200 );
349
			jq.scrollTo( form, 500, { offset:-100, easing:'easeOutQuad' } );
350
			jq('#ac-form-' + ids[2] + ' textarea').focus();
351
352
			return false;
353
		}
354
355
		/* Activity comment posting */
356
		if ( target.attr('name') == 'ac_form_submit' ) {
357
			var form = target.parent().parent();
358
			var form_parent = form.parent();
359
			var form_id = form.attr('id').split('-');
360
361
			if ( !form_parent.hasClass('activity-comments') ) {
362
				var tmp_id = form_parent.attr('id').split('-');
363
				var comment_id = tmp_id[1];
364
			} else {
365
				var comment_id = form_id[2];
366
			}
367
368
			/* Hide any error messages */
369
			jq( 'form#' + form + ' div.error').hide();
370
			target.addClass('loading').prop('disabled', true);
371
372
			jq.post( ajaxurl, {
373
				action: 'new_activity_comment',
374
				'cookie': encodeURIComponent(document.cookie),
375
				'_wpnonce_new_activity_comment': jq("input#_wpnonce_new_activity_comment").val(),
376
				'comment_id': comment_id,
377
				'form_id': form_id[2],
378
				'content': jq('form#' + form.attr('id') + ' textarea').val()
379
			},
380
			function(response)
381
			{
382
				target.removeClass('loading');
383
384
				/* Check for errors and append if found. */
385
				if ( response[0] + response[1] == '-1' ) {
386
					form.append( response.substr( 2, response.length ) ).hide().fadeIn( 200 );
387
				} else {
388
					form.fadeOut( 200,
389
						function() {
390
							if ( 0 == form.parent().children('ul').length ) {
391
								if ( form.parent().hasClass('activity-comments') )
392
									form.parent().prepend('<ul></ul>');
393
								else
394
									form.parent().append('<ul></ul>');
395
							}
396
397
							form.parent().children('ul').append(response).hide().fadeIn( 200 );
398
							form.children('textarea').val('');
399
							form.parent().parent().addClass('has-comments');
400
						}
401
					);
402
					jq( 'form#' + form + ' textarea').val('');
403
404
					/* Increase the "Reply (X)" button count */
405
					jq('li#activity-' + form_id[2] + ' a.acomment-reply span').html( Number( jq('li#activity-' + form_id[2] + ' a.acomment-reply span').html() ) + 1 );
406
				}
407
408
				jq(target).prop("disabled", false);
409
			});
410
411
			return false;
412
		}
413
414
		/* Deleting an activity comment */
415
		if ( target.hasClass('acomment-delete') ) {
416
			var link_href = target.attr('href');
417
			var comment_li = target.parent().parent();
418
			var form = comment_li.parents('div.activity-comments').children('form');
419
420
			var nonce = link_href.split('_wpnonce=');
421
				nonce = nonce[1];
422
423
			var comment_id = link_href.split('cid=');
424
				comment_id = comment_id[1].split('&');
425
				comment_id = comment_id[0];
426
427
			target.addClass('loading');
428
429
			/* Remove any error messages */
430
			jq('div.activity-comments ul div.error').remove();
431
432
			/* Reset the form position */
433
			comment_li.parents('div.activity-comments').append(form);
434
435
			jq.post( ajaxurl, {
436
				action: 'delete_activity_comment',
437
				'cookie': encodeURIComponent(document.cookie),
438
				'_wpnonce': nonce,
439
				'id': comment_id
440
			},
441
			function(response)
442
			{
443
				/* Check for errors and append if found. */
444
				if ( response[0] + response[1] == '-1' ) {
445
					comment_li.prepend( response.substr( 2, response.length ) ).hide().fadeIn( 200 );
446
				} else {
447
					var children = jq( 'li#' + comment_li.attr('id') + ' ul' ).children('li');
448
					var child_count = 0;
449
					jq(children).each( function() {
450
						if ( !jq(this).is(':hidden') )
451
							child_count++;
452
					});
453
					comment_li.fadeOut(200);
454
455
					/* Decrease the "Reply (X)" button count */
456
					var parent_li = comment_li.parents('ul#activity-stream > li');
457
					jq('li#' + parent_li.attr('id') + ' a.acomment-reply span').html( jq('li#' + parent_li.attr('id') + ' a.acomment-reply span').html() - ( 1 + child_count ) );
458
				}
459
			});
460
461
			return false;
462
		}
463
464
		/* Showing hidden comments - pause for half a second */
465
		if ( target.parent().hasClass('show-all') ) {
466
			target.parent().addClass('loading');
467
468
			setTimeout( function() {
469
				target.parent().parent().children('li').fadeIn(200, function() {
470
					target.parent().remove();
471
				});
472
			}, 600 );
473
474
			return false;
475
		}
476
	});
477
478
	/* Escape Key Press for cancelling comment forms */
479
	jq(document).keydown( function(e) {
480
		e = e || window.event;
481
		if (e.target)
482
			element = e.target;
483
		else if (e.srcElement)
484
			element = e.srcElement;
485
486
		if( element.nodeType == 3)
487
			element = element.parentNode;
488
489
		if( e.ctrlKey == true || e.altKey == true || e.metaKey == true )
490
			return;
491
492
		var keyCode = (e.keyCode) ? e.keyCode : e.which;
493
494
		if ( keyCode == 27 ) {
495
			if (element.tagName == 'TEXTAREA') {
496
				if ( jq(element).hasClass('ac-input') )
497
					jq(element).parent().parent().parent().slideUp( 200 );
498
			}
499
		}
500
	});
501
502
	/**** Directory Search ****************************************************/
503
504
	/* The search form on all directory pages */
505
	jq('div.dir-search').click( function(event) {
506
		if ( jq(this).hasClass('no-ajax') )
507
			return;
508
509
		var target = jq(event.target);
510
511
		if ( target.attr('type') == 'submit' ) {
512
			var css_id = jq('div.item-list-tabs li.selected').attr('id').split( '-' );
513
			var object = css_id[0];
514
515
			bp_filter_request( object, jq.cookie('bp-' + object + '-filter'), jq.cookie('bp-' + object + '-scope') , 'div.' + object, target.parent().children('label').children('input').val(), 1, jq.cookie('bp-' + object + '-extras') );
516
517
			return false;
518
		}
519
	});
520
521
	/**** Tabs and Filters ****************************************************/
522
523
	/* When a navigation tab is clicked - e.g. | All Groups | My Groups | */
524
	jq('div.item-list-tabs').click( function(event) {
525
		if ( jq(this).hasClass('no-ajax') )
526
			return;
527
528
		var target = jq(event.target).parent();
529
530
		if ( 'LI' == event.target.parentNode.nodeName && !target.hasClass('last') ) {
531
			var css_id = target.attr('id').split( '-' );
532
			var object = css_id[0];
533
534
			if ( 'activity' == object )
535
				return false;
536
537
			var scope = css_id[1];
538
			var filter = jq("#" + object + "-order-select select").val();
539
			var search_terms = jq("#" + object + "_search").val();
540
541
			bp_filter_request( object, filter, scope, 'div.' + object, search_terms, 1, jq.cookie('bp-' + object + '-extras') );
542
543
			return false;
544
		}
545
	});
546
547
	/* When the filter select box is changed re-query */
548
	jq('li.filter select').change( function() {
549
		if ( jq('div.item-list-tabs li.selected').length )
550
			var el = jq('div.item-list-tabs li.selected');
551
		else
552
			var el = jq(this);
553
554
		var css_id = el.attr('id').split('-');
555
		var object = css_id[0];
556
		var scope = css_id[1];
557
		var filter = jq(this).val();
558
		var search_terms = false;
559
560
		if ( jq('div.dir-search input').length )
561
			search_terms = jq('div.dir-search input').val();
562
563
		if ( 'friends' == object )
564
			object = 'members';
565
566
		bp_filter_request( object, filter, scope, 'div.' + object, search_terms, 1, jq.cookie('bp-' + object + '-extras') );
567
568
		return false;
569
	});
570
571
	/* All pagination links run through this function */
572
	jq('div#content').click( function(event) {
573
		var target = jq(event.target);
574
575
		if ( target.hasClass('button') )
576
			return true;
577
578
		if ( target.parent().parent().hasClass('pagination') && !target.parent().parent().hasClass('no-ajax') ) {
579
			if ( target.hasClass('dots') || target.hasClass('current') )
580
				return false;
581
582
			if ( jq('div.item-list-tabs li.selected').length )
583
				var el = jq('div.item-list-tabs li.selected');
584
			else
585
				var el = jq('li.filter select');
586
587
			var page_number = 1;
588
			var css_id = el.attr('id').split( '-' );
589
			var object = css_id[0];
590
			var search_terms = false;
591
592
			if ( jq('div.dir-search input').length )
593
				search_terms = jq('div.dir-search input').val();
594
595
			if ( jq(target).hasClass('next') )
596
				var page_number = Number( jq('div.pagination span.current').html() ) + 1;
597
			else if ( jq(target).hasClass('prev') )
598
				var page_number = Number( jq('div.pagination span.current').html() ) - 1;
599
			else
600
				var page_number = Number( jq(target).html() );
601
602
			bp_filter_request( object, jq.cookie('bp-' + object + '-filter'), jq.cookie('bp-' + object + '-scope'), 'div.' + object, search_terms, page_number, jq.cookie('bp-' + object + '-extras') );
603
604
			return false;
605
		}
606
607
	});
608
609
	/**** New Forum Directory Post **************************************/
610
611
	/* Hit the "New Topic" button on the forums directory page */
612
	jq('a.show-hide-new').click( function() {
613
		if ( !jq('div#new-topic-post').length )
614
			return false;
615
616
		if ( jq('div#new-topic-post').is(":visible") )
617
			jq('div#new-topic-post').slideUp(200);
618
		else
619
			jq('div#new-topic-post').slideDown(200, function() { jq('#topic_title').focus(); } );
620
621
		return false;
622
	});
623
624
	/* Cancel the posting of a new forum topic */
625
	jq('input#submit_topic_cancel').click( function() {
626
		if ( !jq('div#new-topic-post').length )
627
			return false;
628
629
		jq('div#new-topic-post').slideUp(200);
630
		return false;
631
	});
632
633
	/* Clicking a forum tag */
634
	jq('div#forum-directory-tags a').click( function() {
635
		bp_filter_request( 'forums', 'tags', jq.cookie('bp-forums-scope'), 'div.forums', jq(this).html().replace( /&nbsp;/g, '-' ), 1, jq.cookie('bp-forums-extras') );
636
		return false;
637
	});
638
639
	/** Invite Friends Interface ****************************************/
640
641
	/* Select a user from the list of friends and add them to the invite list */
642
	jq("div#invite-list input").click( function() {
643
		jq('.ajax-loader').toggle();
644
645
		var friend_id = jq(this).val();
646
647
		if ( jq(this).prop('checked') == true )
648
			var friend_action = 'invite';
649
		else
650
			var friend_action = 'uninvite';
651
652
		jq('div.item-list-tabs li.selected').addClass('loading');
653
654
		jq.post( ajaxurl, {
655
			action: 'groups_invite_user',
656
			'friend_action': friend_action,
657
			'cookie': encodeURIComponent(document.cookie),
658
			'_wpnonce': jq("input#_wpnonce_invite_uninvite_user").val(),
659
			'friend_id': friend_id,
660
			'group_id': jq("input#group_id").val()
661
		},
662
		function(response)
663
		{
664
			if ( jq("#message") )
665
				jq("#message").hide();
666
667
			jq('.ajax-loader').toggle();
668
669
			if ( friend_action == 'invite' ) {
670
				jq('#friend-list').append(response);
671
			} else if ( friend_action == 'uninvite' ) {
672
				jq('#friend-list li#uid-' + friend_id).remove();
673
			}
674
675
			jq('div.item-list-tabs li.selected').removeClass('loading');
676
		});
677
	});
678
679
	/* Remove a user from the list of users to invite to a group */
680
	jq("#friend-list li a.remove").live('click', function() {
681
		jq('.ajax-loader').toggle();
682
683
		var friend_id = jq(this).attr('id');
684
		friend_id = friend_id.split('-');
685
		friend_id = friend_id[1];
686
687
		jq.post( ajaxurl, {
688
			action: 'groups_invite_user',
689
			'friend_action': 'uninvite',
690
			'cookie': encodeURIComponent(document.cookie),
691
			'_wpnonce': jq("input#_wpnonce_invite_uninvite_user").val(),
692
			'friend_id': friend_id,
693
			'group_id': jq("input#group_id").val()
694
		},
695
		function(response)
696
		{
697
			jq('.ajax-loader').toggle();
698
			jq('#friend-list li#uid-' + friend_id).remove();
699
			jq('#invite-list input#f-' + friend_id).prop('checked', false);
700
		});
701
702
		return false;
703
	});
704
705
	/** Friendship Requests **************************************/
706
707
	/* Accept and Reject friendship request buttons */
708
	jq("ul#friend-list a.accept, ul#friend-list a.reject").click( function() {
709
		var button = jq(this);
710
		var li = jq(this).parents('ul#friend-list li');
711
		var action_div = jq(this).parents('li div.action');
712
713
		var id = li.attr('id').substr( 11, li.attr('id').length );
714
		var link_href = button.attr('href');
715
716
		var nonce = link_href.split('_wpnonce=');
717
			nonce = nonce[1];
718
719
		if ( jq(this).hasClass('accepted') || jq(this).hasClass('rejected') )
720
			return false;
721
722
		if ( jq(this).hasClass('accept') ) {
723
			var action = 'accept_friendship';
724
			action_div.children('a.reject').css( 'visibility', 'hidden' );
725
		} else {
726
			var action = 'reject_friendship';
727
			action_div.children('a.accept').css( 'visibility', 'hidden' );
728
		}
729
730
		button.addClass('loading');
731
732
		jq.post( ajaxurl, {
733
			action: action,
734
			'cookie': encodeURIComponent(document.cookie),
735
			'id': id,
736
			'_wpnonce': nonce
737
		},
738
		function(response) {
739
			button.removeClass('loading');
740
741
			if ( response[0] + response[1] == '-1' ) {
742
				li.prepend( response.substr( 2, response.length ) );
743
				li.children('div#message').hide().fadeIn(200);
744
			} else {
745
				button.fadeOut( 100, function() {
746
					if ( jq(this).hasClass('accept') ) {
747
						action_div.children('a.reject').hide();
748
						jq(this).html( BP_DTheme.accepted ).fadeIn(50);
749
						jq(this).addClass('accepted');
750
					} else {
751
						action_div.children('a.accept').hide();
752
						jq(this).html( BP_DTheme.rejected ).fadeIn(50);
753
						jq(this).addClass('rejected');
754
					}
755
				});
756
			}
757
		});
758
759
		return false;
760
	});
761
762
	/* Add / Remove friendship buttons */
763
	jq("div.friendship-button a").live('click', function() {
764
		jq(this).parent().addClass('loading');
765
		var fid = jq(this).attr('id');
766
		fid = fid.split('-');
767
		fid = fid[1];
768
769
		var nonce = jq(this).attr('href');
770
		nonce = nonce.split('?_wpnonce=');
771
		nonce = nonce[1].split('&');
772
		nonce = nonce[0];
773
774
		var thelink = jq(this);
775
776
		jq.post( ajaxurl, {
777
			action: 'addremove_friend',
778
			'cookie': encodeURIComponent(document.cookie),
779
			'fid': fid,
780
			'_wpnonce': nonce
781
		},
782
		function(response)
783
		{
784
			var action = thelink.attr('rel');
785
			var parentdiv = thelink.parent();
786
787
			if ( action == 'add' ) {
788
				jq(parentdiv).fadeOut(200,
789
					function() {
790
						parentdiv.removeClass('add_friend');
791
						parentdiv.removeClass('loading');
792
						parentdiv.addClass('pending');
793
						parentdiv.fadeIn(200).html(response);
794
					}
795
				);
796
797
			} else if ( action == 'remove' ) {
798
				jq(parentdiv).fadeOut(200,
799
					function() {
800
						parentdiv.removeClass('remove_friend');
801
						parentdiv.removeClass('loading');
802
						parentdiv.addClass('add');
803
						parentdiv.fadeIn(200).html(response);
804
					}
805
				);
806
			}
807
		});
808
		return false;
809
	} );
810
811
	/** Group Join / Leave Buttons **************************************/
812
813
	jq("div.group-button a").live('click', function() {
814
		var gid = jq(this).parent().attr('id');
815
		gid = gid.split('-');
816
		gid = gid[1];
817
818
		var nonce = jq(this).attr('href');
819
		nonce = nonce.split('?_wpnonce=');
820
		nonce = nonce[1].split('&');
821
		nonce = nonce[0];
822
823
		var thelink = jq(this);
824
825
		jq.post( ajaxurl, {
826
			action: 'joinleave_group',
827
			'cookie': encodeURIComponent(document.cookie),
828
			'gid': gid,
829
			'_wpnonce': nonce
830
		},
831
		function(response)
832
		{
833
			var parentdiv = thelink.parent();
834
835
			if ( !jq('body.directory').length )
836
				location.href = location.href;
837
			else {
838
				jq(parentdiv).fadeOut(200,
839
					function() {
840
						parentdiv.fadeIn(200).html(response);
841
					}
842
				);
843
			}
844
		});
845
		return false;
846
	} );
847
848
	/** Button disabling ************************************************/
849
850
	jq('div.pending').click(function() {
851
		return false;
852
	});
853
854
	/** Private Messaging ******************************************/
855
856
	/* AJAX send reply functionality */
857
	jq("input#send_reply_button").click(
858
		function() {
859
			var order = jq('#messages_order').val() || 'ASC',
860
				offset = jq('#message-recipients').offset();
861
862
			var button = jq("input#send_reply_button");
863
			jq(button).addClass('loading');
864
865
			jq.post( ajaxurl, {
866
				action: 'messages_send_reply',
867
				'cookie': encodeURIComponent(document.cookie),
868
				'_wpnonce': jq("input#send_message_nonce").val(),
869
870
				'content': jq("#message_content").val(),
871
				'send_to': jq("input#send_to").val(),
872
				'subject': jq("input#subject").val(),
873
				'thread_id': jq("input#thread_id").val()
874
			},
875
			function(response)
876
			{
877
				if ( response[0] + response[1] == "-1" ) {
878
					jq('form#send-reply').prepend( response.substr( 2, response.length ) );
879
				} else {
880
					jq('form#send-reply div#message').remove();
881
					jq("#message_content").val('');
882
883
					if ( 'ASC' == order ) {
884
						jq('form#send-reply').before( response );
885
					} else {
886
						jq('#message-recipients').after( response );
887
						jq(window).scrollTop(offset.top);
888
					}
889
890
					jq("div.new-message").hide().slideDown( 200, function() {
891
						jq('div.new-message').removeClass('new-message');
892
					});
893
				}
894
				jq(button).removeClass('loading');
895
			});
896
897
			return false;
898
		}
899
	);
900
901
	/* Marking private messages as read and unread */
902
	jq("a#mark_as_read, a#mark_as_unread").click(function() {
903
		var checkboxes_tosend = '';
904
		var checkboxes = jq("#message-threads tr td input[type='checkbox']");
905
906
		if ( 'mark_as_unread' == jq(this).attr('id') ) {
907
			var currentClass = 'read'
908
			var newClass = 'unread'
909
			var unreadCount = 1;
910
			var inboxCount = 0;
911
			var unreadCountDisplay = 'inline';
912
			var action = 'messages_markunread';
913
		} else {
914
			var currentClass = 'unread'
915
			var newClass = 'read'
916
			var unreadCount = 0;
917
			var inboxCount = 1;
918
			var unreadCountDisplay = 'none';
919
			var action = 'messages_markread';
920
		}
921
922
		checkboxes.each( function(i) {
923
			if(jq(this).is(':checked')) {
924
				if ( jq('tr#m-' + jq(this).attr('value')).hasClass(currentClass) ) {
925
					checkboxes_tosend += jq(this).attr('value');
926
					jq('tr#m-' + jq(this).attr('value')).removeClass(currentClass);
927
					jq('tr#m-' + jq(this).attr('value')).addClass(newClass);
928
					var thread_count = jq('tr#m-' + jq(this).attr('value') + ' td span.unread-count').html();
929
930
					jq('tr#m-' + jq(this).attr('value') + ' td span.unread-count').html(unreadCount);
931
					jq('tr#m-' + jq(this).attr('value') + ' td span.unread-count').css('display', unreadCountDisplay);
932
933
					var inboxcount = jq('tr.unread').length;
934
935
					jq('a#user-messages span').html( inboxcount );
936
937
					if ( i != checkboxes.length - 1 ) {
938
						checkboxes_tosend += ','
939
					}
940
				}
941
			}
942
		});
943
		jq.post( ajaxurl, {
944
			action: action,
945
			'thread_ids': checkboxes_tosend
946
		});
947
		return false;
948
	});
949
950
	/* Selecting unread and read messages in inbox */
951
	jq("select#message-type-select").change(
952
		function() {
953
			var selection = jq("select#message-type-select").val();
954
			var checkboxes = jq("td input[type='checkbox']");
955
			checkboxes.each( function(i) {
956
				checkboxes[i].checked = "";
957
			});
958
959
			switch(selection) {
960
				case 'unread':
961
					var checkboxes = jq("tr.unread td input[type='checkbox']");
962
				break;
963
				case 'read':
964
					var checkboxes = jq("tr.read td input[type='checkbox']");
965
				break;
966
			}
967
			if ( selection != '' ) {
968
				checkboxes.each( function(i) {
969
					checkboxes[i].checked = "checked";
970
				});
971
			} else {
972
				checkboxes.each( function(i) {
973
					checkboxes[i].checked = "";
974
				});
975
			}
976
		}
977
	);
978
979
	/* Bulk delete messages */
980
	jq("a#delete_inbox_messages, a#delete_sentbox_messages").click( function() {
981
		checkboxes_tosend = '';
982
		checkboxes = jq("#message-threads tr td input[type='checkbox']");
983
984
		jq('div#message').remove();
985
		jq(this).addClass('loading');
986
987
		jq(checkboxes).each( function(i) {
988
			if( jq(this).is(':checked') )
989
				checkboxes_tosend += jq(this).attr('value') + ',';
990
		});
991
992
		if ( '' == checkboxes_tosend ) {
993
			jq(this).removeClass('loading');
994
			return false;
995
		}
996
997
		jq.post( ajaxurl, {
998
			action: 'messages_delete',
999
			'thread_ids': checkboxes_tosend
1000
		}, function(response) {
1001
			if ( response[0] + response[1] == "-1" ) {
1002
				jq('#message-threads').prepend( response.substr( 2, response.length ) );
1003
			} else {
1004
				jq('#message-threads').before( '<div id="message" class="updated"><p>' + response + '</p></div>' );
1005
1006
				jq(checkboxes).each( function(i) {
1007
					if( jq(this).is(':checked') )
1008
						jq(this).parent().parent().fadeOut(150);
1009
				});
1010
			}
1011
1012
			jq('div#message').hide().slideDown(150);
1013
			jq("a#delete_inbox_messages, a#delete_sentbox_messages").removeClass('loading');
1014
		});
1015
		return false;
1016
	});
1017
1018
	/* Close site wide notices in the sidebar */
1019
	jq("a#close-notice").click( function() {
1020
		jq(this).addClass('loading');
1021
		jq('div#sidebar div.error').remove();
1022
1023
		jq.post( ajaxurl, {
1024
			action: 'messages_close_notice',
1025
			'notice_id': jq('.notice').attr('rel').substr( 2, jq('.notice').attr('rel').length )
1026
		},
1027
		function(response) {
1028
			jq("a#close-notice").removeClass('loading');
1029
1030
			if ( response[0] + response[1] == '-1' ) {
1031
				jq('.notice').prepend( response.substr( 2, response.length ) );
1032
				jq( 'div#sidebar div.error').hide().fadeIn( 200 );
1033
			} else {
1034
				jq('.notice').slideUp( 100 );
1035
			}
1036
		});
1037
		return false;
1038
	});
1039
1040
	/* Admin Bar & wp_list_pages Javascript IE6 hover class */
1041
	jq("#wp-admin-bar ul.main-nav li, #nav li").mouseover( function() {
1042
		jq(this).addClass('sfhover');
1043
	});
1044
1045
	jq("#wp-admin-bar ul.main-nav li, #nav li").mouseout( function() {
1046
		jq(this).removeClass('sfhover');
1047
	});
1048
1049
	/* Clear BP cookies on logout */
1050
	jq('a.logout').click( function() {
1051
		jq.cookie('bp-activity-scope', null, {path: '/'});
1052
		jq.cookie('bp-activity-filter', null, {path: '/'});
1053
		jq.cookie('bp-activity-oldestpage', null, {path: '/'});
1054
1055
		var objects = [ 'members', 'groups', 'blogs', 'forums' ];
1056
		jq(objects).each( function(i) {
1057
			jq.cookie('bp-' + objects[i] + '-scope', null, {path: '/'} );
1058
			jq.cookie('bp-' + objects[i] + '-filter', null, {path: '/'} );
1059
			jq.cookie('bp-' + objects[i] + '-extras', null, {path: '/'} );
1060
		});
1061
	});
1062
});
1063
1064
/* Setup activity scope and filter based on the current cookie settings. */
1065
function bp_init_activity() {
1066
	/* Reset the page */
1067
	jq.cookie( 'bp-activity-oldestpage', 1, {path: '/'} );
1068
1069
	if ( null != jq.cookie('bp-activity-filter') && jq('#activity-filter-select').length )
1070
		jq('#activity-filter-select select option[value="' + jq.cookie('bp-activity-filter') + '"]').prop( 'selected', true );
1071
1072
	/* Activity Tab Set */
1073
	if ( null != jq.cookie('bp-activity-scope') && jq('div.activity-type-tabs').length ) {
1074
		jq('div.activity-type-tabs li').each( function() {
1075
			jq(this).removeClass('selected');
1076
		});
1077
		jq('li#activity-' + jq.cookie('bp-activity-scope') + ', div.item-list-tabs li.current').addClass('selected');
1078
	}
1079
}
1080
1081
/* Setup object scope and filter based on the current cookie settings for the object. */
1082
function bp_init_objects(objects) {
1083
	jq(objects).each( function(i) {
1084
		if ( null != jq.cookie('bp-' + objects[i] + '-filter') && jq('li#' + objects[i] + '-order-select select').length )
1085
			jq('li#' + objects[i] + '-order-select select option[value="' + jq.cookie('bp-' + objects[i] + '-filter') + '"]').prop( 'selected', true );
1086
1087
		if ( null != jq.cookie('bp-' + objects[i] + '-scope') && jq('div.' + objects[i]).length ) {
1088
			jq('div.item-list-tabs li').each( function() {
1089
				jq(this).removeClass('selected');
1090
			});
1091
			jq('div.item-list-tabs li#' + objects[i] + '-' + jq.cookie('bp-' + objects[i] + '-scope') + ', div.item-list-tabs#object-nav li.current').addClass('selected');
1092
		}
1093
	});
1094
}
1095
1096
/* Filter the current content list (groups/members/blogs/topics) */
1097
function bp_filter_request( object, filter, scope, target, search_terms, page, extras ) {
1098
	if ( 'activity' == object )
1099
		return false;
1100
1101
	if ( jq.query.get('s') && !search_terms )
1102
		search_terms = jq.query.get('s');
1103
1104
	if ( null == scope )
1105
		scope = 'all';
1106
1107
	/* Save the settings we want to remain persistent to a cookie */
1108
	jq.cookie( 'bp-' + object + '-scope', scope, {path: '/'} );
1109
	jq.cookie( 'bp-' + object + '-filter', filter, {path: '/'} );
1110
	jq.cookie( 'bp-' + object + '-extras', extras, {path: '/'} );
1111
1112
	/* Set the correct selected nav and filter */
1113
	jq('div.item-list-tabs li').each( function() {
1114
		jq(this).removeClass('selected');
1115
	});
1116
	jq('div.item-list-tabs li#' + object + '-' + scope + ', div.item-list-tabs#object-nav li.current').addClass('selected');
1117
	jq('div.item-list-tabs li.selected').addClass('loading');
1118
	jq('div.item-list-tabs select option[value="' + filter + '"]').prop( 'selected', true );
1119
1120
	if ( 'friends' == object )
1121
		object = 'members';
1122
1123
	if ( bp_ajax_request )
1124
		bp_ajax_request.abort();
1125
1126
	bp_ajax_request = jq.post( ajaxurl, {
1127
		action: object + '_filter',
1128
		'cookie': encodeURIComponent(document.cookie),
1129
		'object': object,
1130
		'filter': filter,
1131
		'search_terms': search_terms,
1132
		'scope': scope,
1133
		'page': page,
1134
		'extras': extras
1135
	},
1136
	function(response)
1137
	{
1138
		jq(target).fadeOut( 100, function() {
1139
			jq(this).html(response);
1140
			jq(this).fadeIn(100);
1141
	 	});
1142
		jq('div.item-list-tabs li.selected').removeClass('loading');
1143
	});
1144
}
1145
1146
/* Activity Loop Requesting */
1147
function bp_activity_request(scope, filter) {
1148
	/* Save the type and filter to a session cookie */
1149
	jq.cookie( 'bp-activity-scope', scope, {path: '/'} );
1150
	jq.cookie( 'bp-activity-filter', filter, {path: '/'} );
1151
	jq.cookie( 'bp-activity-oldestpage', 1, {path: '/'} );
1152
1153
	/* Remove selected and loading classes from tabs */
1154
	jq('div.item-list-tabs li').each( function() {
1155
		jq(this).removeClass('selected loading');
1156
	});
1157
	/* Set the correct selected nav and filter */
1158
	jq('li#activity-' + scope + ', div.item-list-tabs li.current').addClass('selected');
1159
	jq('div#object-nav.item-list-tabs li.selected, div.activity-type-tabs li.selected').addClass('loading');
1160
	jq('#activity-filter-select select option[value="' + filter + '"]').prop( 'selected', true );
1161
1162
	/* Reload the activity stream based on the selection */
1163
	jq('.widget_bp_activity_widget h2 span.ajax-loader').show();
1164
1165
	if ( bp_ajax_request )
1166
		bp_ajax_request.abort();
1167
1168
	bp_ajax_request = jq.post( ajaxurl, {
1169
		action: 'activity_widget_filter',
1170
		'cookie': encodeURIComponent(document.cookie),
1171
		'_wpnonce_activity_filter': jq("input#_wpnonce_activity_filter").val(),
1172
		'scope': scope,
1173
		'filter': filter
1174
	},
1175
	function(response)
1176
	{
1177
		jq('.widget_bp_activity_widget h2 span.ajax-loader').hide();
1178
1179
		jq('div.activity').fadeOut( 100, function() {
1180
			jq(this).html(response.contents);
1181
			jq(this).fadeIn(100);
1182
1183
			/* Selectively hide comments */
1184
			bp_dtheme_hide_comments();
1185
		});
1186
1187
		/* Update the feed link */
1188
		if ( null != response.feed_url )
1189
			jq('.directory div#subnav li.feed a, .home-page div#subnav li.feed a').attr('href', response.feed_url);
1190
1191
		jq('div.item-list-tabs li.selected').removeClass('loading');
1192
1193
	}, 'json' );
1194
}
1195
1196
/* Hide long lists of activity comments, only show the latest five root comments. */
1197
function bp_dtheme_hide_comments() {
1198
	var comments_divs = jq('div.activity-comments');
1199
1200
	if ( !comments_divs.length )
1201
		return false;
1202
1203
	comments_divs.each( function() {
1204
		if ( jq(this).children('ul').children('li').length < 5 ) return;
1205
1206
		var comments_div = jq(this);
1207
		var parent_li = comments_div.parents('ul#activity-stream > li');
1208
		var comment_lis = jq(this).children('ul').children('li');
1209
		var comment_count = ' ';
1210
1211
		if ( jq('li#' + parent_li.attr('id') + ' a.acomment-reply span').length )
1212
			var comment_count = jq('li#' + parent_li.attr('id') + ' a.acomment-reply span').html();
1213
1214
		comment_lis.each( function(i) {
1215
			/* Show the latest 5 root comments */
1216
			if ( i < comment_lis.length - 5 ) {
1217
				jq(this).addClass('hidden');
1218
				jq(this).toggle();
1219
1220
				if ( !i )
1221
					jq(this).before( '<li class="show-all"><a href="#' + parent_li.attr('id') + '/show-all/" title="' + BP_DTheme.show_all_comments + '">' + BP_DTheme.show_all + ' ' + comment_count + ' ' + BP_DTheme.comments + '</a></li>' );
1222
			}
1223
		});
1224
1225
	});
1226
}
1227
1228
/* Helper Functions */
1229
1230
function checkAll() {
1231
	var checkboxes = document.getElementsByTagName("input");
1232
	for(var i=0; i<checkboxes.length; i++) {
1233
		if(checkboxes[i].type == "checkbox") {
1234
			if($("check_all").checked == "") {
1235
				checkboxes[i].checked = "";
1236
			}
1237
			else {
1238
				checkboxes[i].checked = "checked";
1239
			}
1240
		}
1241
	}
1242
}
1243
1244
function clear(container) {
1245
	if( !document.getElementById(container) ) return;
1246
1247
	var container = document.getElementById(container);
1248
1249
	if ( radioButtons = container.getElementsByTagName('INPUT') ) {
1250
		for(var i=0; i<radioButtons.length; i++) {
1251
			radioButtons[i].checked = '';
1252
		}
1253
	}
1254
1255
	if ( options = container.getElementsByTagName('OPTION') ) {
1256
		for(var i=0; i<options.length; i++) {
1257
			options[i].selected = false;
1258
		}
1259
	}
1260
1261
	return;
1262
}
1263
1264
/* ScrollTo plugin - just inline and minified */
1265
;(function(d){var k=d.scrollTo=function(a,i,e){d(window).scrollTo(a,i,e)};k.defaults={axis:'xy',duration:parseFloat(d.fn.jquery)>=1.3?0:1};k.window=function(a){return d(window)._scrollable()};d.fn._scrollable=function(){return this.map(function(){var a=this,i=!a.nodeName||d.inArray(a.nodeName.toLowerCase(),['iframe','#document','html','body'])!=-1;if(!i)return a;var e=(a.contentWindow||a).document||a.ownerDocument||a;return d.browser.safari||e.compatMode=='BackCompat'?e.body:e.documentElement})};d.fn.scrollTo=function(n,j,b){if(typeof j=='object'){b=j;j=0}if(typeof b=='function')b={onAfter:b};if(n=='max')n=9e9;b=d.extend({},k.defaults,b);j=j||b.speed||b.duration;b.queue=b.queue&&b.axis.length>1;if(b.queue)j/=2;b.offset=p(b.offset);b.over=p(b.over);return this._scrollable().each(function(){var q=this,r=d(q),f=n,s,g={},u=r.is('html,body');switch(typeof f){case'number':case'string':if(/^([+-]=)?\d+(\.\d+)?(px|%)?$/.test(f)){f=p(f);break}f=d(f,this);case'object':if(f.is||f.style)s=(f=d(f)).offset()}d.each(b.axis.split(''),function(a,i){var e=i=='x'?'Left':'Top',h=e.toLowerCase(),c='scroll'+e,l=q[c],m=k.max(q,i);if(s){g[c]=s[h]+(u?0:l-r.offset()[h]);if(b.margin){g[c]-=parseInt(f.css('margin'+e))||0;g[c]-=parseInt(f.css('border'+e+'Width'))||0}g[c]+=b.offset[h]||0;if(b.over[h])g[c]+=f[i=='x'?'width':'height']()*b.over[h]}else{var o=f[h];g[c]=o.slice&&o.slice(-1)=='%'?parseFloat(o)/100*m:o}if(/^\d+$/.test(g[c]))g[c]=g[c]<=0?0:Math.min(g[c],m);if(!a&&b.queue){if(l!=g[c])t(b.onAfterFirst);delete g[c]}});t(b.onAfter);function t(a){r.animate(g,j,b.easing,a&&function(){a.call(this,n,b)})}}).end()};k.max=function(a,i){var e=i=='x'?'Width':'Height',h='scroll'+e;if(!d(a).is('html,body'))return a[h]-d(a)[e.toLowerCase()]();var c='client'+e,l=a.ownerDocument.documentElement,m=a.ownerDocument.body;return Math.max(l[h],m[h])-Math.min(l[c],m[c])};function p(a){return typeof a=='object'?a:{top:a,left:a}}})(jQuery);
1266
1267
/* jQuery Easing Plugin, v1.3 - http://gsgd.co.uk/sandbox/jquery/easing/ */
1268
jQuery.easing.jswing=jQuery.easing.swing;jQuery.extend(jQuery.easing,{def:"easeOutQuad",swing:function(e,f,a,h,g){return jQuery.easing[jQuery.easing.def](e,f,a,h,g)},easeInQuad:function(e,f,a,h,g){return h*(f/=g)*f+a},easeOutQuad:function(e,f,a,h,g){return -h*(f/=g)*(f-2)+a},easeInOutQuad:function(e,f,a,h,g){if((f/=g/2)<1){return h/2*f*f+a}return -h/2*((--f)*(f-2)-1)+a},easeInCubic:function(e,f,a,h,g){return h*(f/=g)*f*f+a},easeOutCubic:function(e,f,a,h,g){return h*((f=f/g-1)*f*f+1)+a},easeInOutCubic:function(e,f,a,h,g){if((f/=g/2)<1){return h/2*f*f*f+a}return h/2*((f-=2)*f*f+2)+a},easeInQuart:function(e,f,a,h,g){return h*(f/=g)*f*f*f+a},easeOutQuart:function(e,f,a,h,g){return -h*((f=f/g-1)*f*f*f-1)+a},easeInOutQuart:function(e,f,a,h,g){if((f/=g/2)<1){return h/2*f*f*f*f+a}return -h/2*((f-=2)*f*f*f-2)+a},easeInQuint:function(e,f,a,h,g){return h*(f/=g)*f*f*f*f+a},easeOutQuint:function(e,f,a,h,g){return h*((f=f/g-1)*f*f*f*f+1)+a},easeInOutQuint:function(e,f,a,h,g){if((f/=g/2)<1){return h/2*f*f*f*f*f+a}return h/2*((f-=2)*f*f*f*f+2)+a},easeInSine:function(e,f,a,h,g){return -h*Math.cos(f/g*(Math.PI/2))+h+a},easeOutSine:function(e,f,a,h,g){return h*Math.sin(f/g*(Math.PI/2))+a},easeInOutSine:function(e,f,a,h,g){return -h/2*(Math.cos(Math.PI*f/g)-1)+a},easeInExpo:function(e,f,a,h,g){return(f==0)?a:h*Math.pow(2,10*(f/g-1))+a},easeOutExpo:function(e,f,a,h,g){return(f==g)?a+h:h*(-Math.pow(2,-10*f/g)+1)+a},easeInOutExpo:function(e,f,a,h,g){if(f==0){return a}if(f==g){return a+h}if((f/=g/2)<1){return h/2*Math.pow(2,10*(f-1))+a}return h/2*(-Math.pow(2,-10*--f)+2)+a},easeInCirc:function(e,f,a,h,g){return -h*(Math.sqrt(1-(f/=g)*f)-1)+a},easeOutCirc:function(e,f,a,h,g){return h*Math.sqrt(1-(f=f/g-1)*f)+a},easeInOutCirc:function(e,f,a,h,g){if((f/=g/2)<1){return -h/2*(Math.sqrt(1-f*f)-1)+a}return h/2*(Math.sqrt(1-(f-=2)*f)+1)+a},easeInElastic:function(f,h,e,l,k){var i=1.70158;var j=0;var g=l;if(h==0){return e}if((h/=k)==1){return e+l}if(!j){j=k*0.3}if(g<Math.abs(l)){g=l;var i=j/4}else{var i=j/(2*Math.PI)*Math.asin(l/g)}return -(g*Math.pow(2,10*(h-=1))*Math.sin((h*k-i)*(2*Math.PI)/j))+e},easeOutElastic:function(f,h,e,l,k){var i=1.70158;var j=0;var g=l;if(h==0){return e}if((h/=k)==1){return e+l}if(!j){j=k*0.3}if(g<Math.abs(l)){g=l;var i=j/4}else{var i=j/(2*Math.PI)*Math.asin(l/g)}return g*Math.pow(2,-10*h)*Math.sin((h*k-i)*(2*Math.PI)/j)+l+e},easeInOutElastic:function(f,h,e,l,k){var i=1.70158;var j=0;var g=l;if(h==0){return e}if((h/=k/2)==2){return e+l}if(!j){j=k*(0.3*1.5)}if(g<Math.abs(l)){g=l;var i=j/4}else{var i=j/(2*Math.PI)*Math.asin(l/g)}if(h<1){return -0.5*(g*Math.pow(2,10*(h-=1))*Math.sin((h*k-i)*(2*Math.PI)/j))+e}return g*Math.pow(2,-10*(h-=1))*Math.sin((h*k-i)*(2*Math.PI)/j)*0.5+l+e},easeInBack:function(e,f,a,i,h,g){if(g==undefined){g=1.70158}return i*(f/=h)*f*((g+1)*f-g)+a},easeOutBack:function(e,f,a,i,h,g){if(g==undefined){g=1.70158}return i*((f=f/h-1)*f*((g+1)*f+g)+1)+a},easeInOutBack:function(e,f,a,i,h,g){if(g==undefined){g=1.70158}if((f/=h/2)<1){return i/2*(f*f*(((g*=(1.525))+1)*f-g))+a}return i/2*((f-=2)*f*(((g*=(1.525))+1)*f+g)+2)+a},easeInBounce:function(e,f,a,h,g){return h-jQuery.easing.easeOutBounce(e,g-f,0,h,g)+a},easeOutBounce:function(e,f,a,h,g){if((f/=g)<(1/2.75)){return h*(7.5625*f*f)+a}else{if(f<(2/2.75)){return h*(7.5625*(f-=(1.5/2.75))*f+0.75)+a}else{if(f<(2.5/2.75)){return h*(7.5625*(f-=(2.25/2.75))*f+0.9375)+a}else{return h*(7.5625*(f-=(2.625/2.75))*f+0.984375)+a}}}},easeInOutBounce:function(e,f,a,h,g){if(f<g/2){return jQuery.easing.easeInBounce(e,f*2,0,h,g)*0.5+a}return jQuery.easing.easeOutBounce(e,f*2-g,0,h,g)*0.5+h*0.5+a}});
1269
1270
/* jQuery Cookie plugin */
1271
jQuery.cookie=function(name,value,options){if(typeof value!='undefined'){options=options||{};if(value===null){value='';options.expires=-1;}var expires='';if(options.expires&&(typeof options.expires=='number'||options.expires.toUTCString)){var date;if(typeof options.expires=='number'){date=new Date();date.setTime(date.getTime()+(options.expires*24*60*60*1000));}else{date=options.expires;}expires='; expires='+date.toUTCString();}var path=options.path?'; path='+(options.path):'';var domain=options.domain?'; domain='+(options.domain):'';var secure=options.secure?'; secure':'';document.cookie=[name,'=',encodeURIComponent(value),expires,path,domain,secure].join('');}else{var cookieValue=null;if(document.cookie&&document.cookie!=''){var cookies=document.cookie.split(';');for(var i=0;i<cookies.length;i++){var cookie=jQuery.trim(cookies[i]);if(cookie.substring(0,name.length+1)==(name+'=')){cookieValue=decodeURIComponent(cookie.substring(name.length+1));break;}}}return cookieValue;}};
1272
1273
/* jQuery querystring plugin */
1274
eval(function(p,a,c,k,e,d){e=function(c){return(c<a?'':e(parseInt(c/a)))+((c=c%a)>35?String.fromCharCode(c+29):c.toString(36))};if(!''.replace(/^/,String)){while(c--){d[e(c)]=k[c]||e(c)}k=[function(e){return d[e]}];e=function(){return'\\w+'};c=1};while(c--){if(k[c]){p=p.replace(new RegExp('\\b'+e(c)+'\\b','g'),k[c])}}return p}('M 6(A){4 $11=A.11||\'&\';4 $V=A.V===r?r:j;4 $1p=A.1p===r?\'\':\'[]\';4 $13=A.13===r?r:j;4 $D=$13?A.D===j?"#":"?":"";4 $15=A.15===r?r:j;v.1o=M 6(){4 f=6(o,t){8 o!=1v&&o!==x&&(!!t?o.1t==t:j)};4 14=6(1m){4 m,1l=/\\[([^[]*)\\]/g,T=/^([^[]+)(\\[.*\\])?$/.1r(1m),k=T[1],e=[];19(m=1l.1r(T[2]))e.u(m[1]);8[k,e]};4 w=6(3,e,7){4 o,y=e.1b();b(I 3!=\'X\')3=x;b(y===""){b(!3)3=[];b(f(3,L)){3.u(e.h==0?7:w(x,e.z(0),7))}n b(f(3,1a)){4 i=0;19(3[i++]!=x);3[--i]=e.h==0?7:w(3[i],e.z(0),7)}n{3=[];3.u(e.h==0?7:w(x,e.z(0),7))}}n b(y&&y.T(/^\\s*[0-9]+\\s*$/)){4 H=1c(y,10);b(!3)3=[];3[H]=e.h==0?7:w(3[H],e.z(0),7)}n b(y){4 H=y.B(/^\\s*|\\s*$/g,"");b(!3)3={};b(f(3,L)){4 18={};1w(4 i=0;i<3.h;++i){18[i]=3[i]}3=18}3[H]=e.h==0?7:w(3[H],e.z(0),7)}n{8 7}8 3};4 C=6(a){4 p=d;p.l={};b(a.C){v.J(a.Z(),6(5,c){p.O(5,c)})}n{v.J(1u,6(){4 q=""+d;q=q.B(/^[?#]/,\'\');q=q.B(/[;&]$/,\'\');b($V)q=q.B(/[+]/g,\' \');v.J(q.Y(/[&;]/),6(){4 5=1e(d.Y(\'=\')[0]||"");4 c=1e(d.Y(\'=\')[1]||"");b(!5)8;b($15){b(/^[+-]?[0-9]+\\.[0-9]*$/.1d(c))c=1A(c);n b(/^[+-]?[0-9]+$/.1d(c))c=1c(c,10)}c=(!c&&c!==0)?j:c;b(c!==r&&c!==j&&I c!=\'1g\')c=c;p.O(5,c)})})}8 p};C.1H={C:j,1G:6(5,1f){4 7=d.Z(5);8 f(7,1f)},1h:6(5){b(!f(5))8 d.l;4 K=14(5),k=K[0],e=K[1];4 3=d.l[k];19(3!=x&&e.h!=0){3=3[e.1b()]}8 I 3==\'1g\'?3:3||""},Z:6(5){4 3=d.1h(5);b(f(3,1a))8 v.1E(j,{},3);n b(f(3,L))8 3.z(0);8 3},O:6(5,c){4 7=!f(c)?x:c;4 K=14(5),k=K[0],e=K[1];4 3=d.l[k];d.l[k]=w(3,e.z(0),7);8 d},w:6(5,c){8 d.N().O(5,c)},1s:6(5){8 d.O(5,x).17()},1z:6(5){8 d.N().1s(5)},1j:6(){4 p=d;v.J(p.l,6(5,7){1y p.l[5]});8 p},1F:6(Q){4 D=Q.B(/^.*?[#](.+?)(?:\\?.+)?$/,"$1");4 S=Q.B(/^.*?[?](.+?)(?:#.+)?$/,"$1");8 M C(Q.h==S.h?\'\':S,Q.h==D.h?\'\':D)},1x:6(){8 d.N().1j()},N:6(){8 M C(d)},17:6(){6 F(G){4 R=I G=="X"?f(G,L)?[]:{}:G;b(I G==\'X\'){6 1k(o,5,7){b(f(o,L))o.u(7);n o[5]=7}v.J(G,6(5,7){b(!f(7))8 j;1k(R,5,F(7))})}8 R}d.l=F(d.l);8 d},1B:6(){8 d.N().17()},1D:6(){4 i=0,U=[],W=[],p=d;4 16=6(E){E=E+"";b($V)E=E.B(/ /g,"+");8 1C(E)};4 1n=6(1i,5,7){b(!f(7)||7===r)8;4 o=[16(5)];b(7!==j){o.u("=");o.u(16(7))}1i.u(o.P(""))};4 F=6(R,k){4 12=6(5){8!k||k==""?[5].P(""):[k,"[",5,"]"].P("")};v.J(R,6(5,7){b(I 7==\'X\')F(7,12(5));n 1n(W,12(5),7)})};F(d.l);b(W.h>0)U.u($D);U.u(W.P($11));8 U.P("")}};8 M C(1q.S,1q.D)}}(v.1o||{});',62,106,'|||target|var|key|function|value|return|||if|val|this|tokens|is||length||true|base|keys||else||self||false|||push|jQuery|set|null|token|slice|settings|replace|queryObject|hash|str|build|orig|index|typeof|each|parsed|Array|new|copy|SET|join|url|obj|search|match|queryString|spaces|chunks|object|split|get||separator|newKey|prefix|parse|numbers|encode|COMPACT|temp|while|Object|shift|parseInt|test|decodeURIComponent|type|number|GET|arr|EMPTY|add|rx|path|addFields|query|suffix|location|exec|REMOVE|constructor|arguments|undefined|for|empty|delete|remove|parseFloat|compact|encodeURIComponent|toString|extend|load|has|prototype'.split('|'),0,{}))