steamgifts.com improved game filter

Makes hiding giveaways for specific games much quicker and easier

目前为 2015-06-30 提交的版本。查看 最新版本

// ==UserScript==
// @name        steamgifts.com improved game filter
// @description Makes hiding giveaways for specific games much quicker and easier
// @namespace   Barefoot Monkey
// @include     http://www.steamgifts.com/
// @include     http://www.steamgifts.com/giveaways/search?*
// @version     1.1.2
// @grant       none
// ==/UserScript==

$('<style>')
.text(
	'@keyframes rotate-right-60px {'
	+'	from {'
	+'		background-position: 0px 0;'
	+'	}'
	+'	to {'
	+'		background-position: 300px 0;'
	+'	}'
	+'}'

	+'@keyframes rotate-left-60px {'
	+'	from {'
	+'		background-position: 0px 0;'
	+'	}'
	+'	to {'
	+'		background-position: -300px 0;'
	+'	}'
	+'}'

	+'.giveaway__row-outer-wrap {'
	+'	transition: opacity 1s linear;'
	+'}'

	+'.BarefootMonkey-hidden {'
	+'	opacity: 0.6;'
	+'	background: repeating-linear-gradient(45deg, transparent 0px, transparent 10px, #ccc 10px, #ccc 12px, transparent 12px), repeating-linear-gradient(-45deg, transparent 0px, transparent 10px, #ccc 10px, #ccc 12px, transparent 12px);'
	+'}'

	+'.BarefootMonkey-hiding, .BarefootMonkey-unhiding {'
	+'	opacity: 0.6;'
	+'	animation-duration: 12s;'
	+'	animation-iteration-count: infinite;'
	+'	animation-timing-function: linear;'
	+'}'

	+'.BarefootMonkey-hiding {'
	+'	animation-name: rotate-right-60px;'
	+'	background: repeating-linear-gradient(45deg, transparent 0px, transparent 10px, #ccc 10px, #ccc 12px);'
	+'}'

	+'.BarefootMonkey-unhiding {'
	+'	animation-name: rotate-left-60px;'
	+'	background: repeating-linear-gradient(-45deg, transparent 0px, transparent 10px, #ccc 10px, #ccc 12px);'
	+'}'
)
.appendTo(document.head)

setTimeout(function() {

	function update_filter(id, token, action, url, prior_class, progress_class, complete_class) {
		$('.giveaway__icon.giveaway__hide[data-popup="popup--hide-games"][data-game-id='+id+']')
		.closest('.giveaway__row-outer-wrap')
		.addClass(progress_class)
		.removeClass('BarefootMonkey-error')
		.removeClass(prior_class)

		$.ajax({
			url: url,
			method: 'POST',
			context: {id: id, progress_class: progress_class, complete_class: complete_class},
			data: {
				'xsrf_token':token,
				'game_id':id,
				'do': action
			},
			'error': function() {
				$('.giveaway__icon.giveaway__hide[data-popup="popup--hide-games"][data-game-id='+this.id+']')
				.closest('.giveaway__row-outer-wrap')
				.removeClass(this.progress_class)
				.addClass('BarefootMonkey-error')
			},
			'success': function() {
				$('.giveaway__icon.giveaway__hide[data-popup="popup--hide-games"][data-game-id='+this.id+']')
				.closest('.giveaway__row-outer-wrap')
				.removeClass(this.progress_class)
				.addClass(this.complete_class)
			}
		})
	}

	$('.giveaway__icon.giveaway__hide')
	.off()
	.click(function(event) {

		// get id and token
		var id = $(this).data('game-id')
		var token = $('.popup--hide-games form input[name="xsrf_token"]').val()

		// hide or unhide the game
		if (id && token) {
			var closest = $(this).closest('.giveaway__row-outer-wrap')
			if (closest.hasClass('BarefootMonkey-hidden')) {
				update_filter(id, token, 'remove_filter', '/ajax.php', 'BarefootMonkey-hidden', 'BarefootMonkey-unhiding', null)
			} else if (!closest.hasClass('BarefootMonkey-unhiding') && !closest.hasClass('BarefootMonkey-hiding')) {
				update_filter(id, token, 'hide_giveaways_by_game_id', '/', null, 'BarefootMonkey-hiding', 'BarefootMonkey-hidden')
			}
		}

		event.stopPropagation()
	})
}, 1)

QingJ © 2025

镜像随时可能失效,请加Q群300939539或关注我们的公众号极客氢云获取最新地址