Greasy Fork is available in English.

Swefilmer

Wide player, and store layout to next time you change. Navigate faster to Next TV-Series or the previous one. Easy to see where you are. (colored)

// ==UserScript==
// @name       		Swefilmer
// @namespace  		http://use.i.E.your.homepage/

// @version    		0.952000
// @description  	Wide player, and store layout to next time you change. Navigate faster to Next TV-Series or the previous one. Easy to see where you are. (colored) 

// @match      		http://www.swefilmer.com/*
// @require    		http://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js

// @run-at     		document-end

// @grant      		GM_getValue
// @grant      		GM_setValue
// @grant      		GM_deleteValue
// @grant      		GM_log

// @created			2014-04-01
// @released		2014-00-00
// @updated			2014-00-00

// @history         @version v0.95200 							2015-02-20 - Check maximum Screen width
// @history         @version v0.95100 							2015-02-12 - FullPlayer button added. XtraWide has been widen. Code update
// @history         @version v0.95000 							2014-11-21 - FullPlayer added. layout correction. Code reorderd and some redesign.
// @history         @version v0.92421 							2014-06-01 
// @history         @version v0.9242 							2014-06-01
// @history         @version v0.902 							2014-04-14 - Added Description
// @history         @version v0.901 							2014-04-14 
// @history         @version v0.800 							2014-04-04 - first official version

// @compatible		Greasemonkey, Tampermonkey
// @license         GNU GPL v3 (http://www.gnu.org/copyleft/gpl.html) 
// @copyright		2014+, Magnus Fohlström
// ==/UserScript==

/*global $, jQuery*/

/*jshint -W014*/
// -W014, laxbreak, Bad line breaking before '+'

(function ($) { 
    $.fn.waitUntilExists	= function (handler, shouldRunHandlerOnce, isChild) {
        var found	= 'found';
        var $this	= $(this.selector);
        var $elements	= $this.not(function () { return $(this).data(found); }).each(handler).data(found, true);   
        if (!isChild) {
            (window.waitUntilExists_Intervals = window.waitUntilExists_Intervals || {})[this.selector] =
                window.setInterval(function () { $this.waitUntilExists(handler, shouldRunHandlerOnce,     
        true); }, 500);
        } else if (shouldRunHandlerOnce && $elements.length) {
            window.clearInterval(window.waitUntilExists_Intervals[this.selector]);
        }
		return $this;
	};
}(jQuery));

String.prototype.formatString = function(){ 
    return this.toString()
                .split(/\s+/g).join(' ')
                .split('{').join('{\n\t')
                .split('; ').join(';')
                .split(';').join(';\n\t')
                .split('*/').join('*/\n')
                .split('}').join('}\n'); 
};

function l(name,fn){ console.log( name, fn !== undefined ? fn : '' ); }

$( '<style id="navMenue"></style>'
 + '<style id="widePlayer"></style>'
 + '<style id="XtraWidePlayer"></style>'
 + '<style id="fullplayer"></style>'
 + '<style id="lightning"></style>').appendTo('head');

function navMenue()
{    
    var newRule_navMenue = ' '
    +	'.navMenue {'
    +		'border-color: rgb(117, 98, 69);'
    +		'border-radius: 10px;'
    +		'border-width: 2px;'
    +		'border-style: solid;'
    +		'background-color: rgb(146, 133, 117);'
    +		'color: #505050;'
    +		'padding: 3px 16px;'
    +		'margin-right: 6px;'
    +		'top: 1px;'
    +		'position: relative;'
    +		'z-index:1000;'
    +		'}'
    +	'#myConfigButton {'
    +		'float: left;'
    +		'font-size: 17px;'
    +		'margin-left: 2px;'
    +		'margin-top: 5px;'
    +		'}'
    +	'#myConfigButton img {'
    +		'margin-right: 5px;'
    +		'height: 29px;'
    +		'border-radius: 10px;'
    +		'}'
    +	'#lightHolder:hover, .navMenue:hover {'
    +		'cursor: pointer;'
    +		'}'
    
    +	'a:focus, .navMenue:hover, a:active {'
    +		'text-decoration: none;'
    +		'color: aliceblue;'
    +		'}'
    
    
    +	'.navMenue .titles {'
    +		'display:none !important;'
    +		'margin: -50px 105px;'
	+		'padding: 0 30px;'
    +		'}'
    +	'.navMenue:hover .titles {'
    +		'display:table !important;'
    +		'z-index:200000;'
    +		'position: absolute;'
    +		'}'
    
    +	'#tabCtrl iframe {'
    +		'border-style: none;'
    +		'}';
    $("style#navMenue").empty().html( newRule_navMenue.formatString() );
    
    var newHtml_navMenue =
        '<span id="myConfigButton" style="float:left">'
    +		'<span id="lightHolder"></span>'
    +		'<span id="prevMenue" class="navMenue">  Previous <span class="titles">  </span>  </span>'
    +		'<span id="nextMenue" class="navMenue">  Next     <span class="titles">  </span>  </span>'
    +		'<span id="fullMenue" class="navMenue sizeing"><span> FullBrowser </span></span>'    
    +		'<span id="XwideMenue" class="navMenue sizeing"><span> xtraWide </span></span>'
    +		'<span id="wideMenue" class="navMenue sizeing"><span> Wide </span></span>'
    +		'<span id="orginMenue" class="navMenue sizeing"><span> Orginal </span></span>'
    //+		'<span id="playMenue" class="navMenue"><span href="#"> Play </span></span>'
    +	'</span>';
    $( newHtml_navMenue ).insertAfter( ".fsol" );
    $( "#lightHolder" ).prepend( $( "#lightningOff" ) );
}

function widePlayer()
{    
    var newRule_widePlayer = ' '
    +	'#content > div.filmborder {'
    +		'margin-left: 0px;'
    +		'width: 975px;'
    +		'}'
    +	'#content > div.filmborder > div.filmcontent {'
    +		' width: 975px;'
    +		'}'
    +	'.filmicerik object, .filmicerik embed, .filmicerik iframe, .filmicerik {'
    +		'width: 958px;'
    +		'}'
    +	'.filmcontent {'
    +		'width: 732px;'
    +		'}'
    +	'.filmicerik object, .filmicerik embed, .filmicerik iframe {'
    +		'height: 714px;'
    +		'}';
    $("style#widePlayer").empty().html( newRule_widePlayer.formatString()  ); 
}

function XtraWidePlayer()
{    
    var TargetWidth = 1400,
        screenW = window.screen.width,
        Scorr = screenW < TargetWidth ? screenW - 40 : TargetWidth,
        multi = Scorr/980,
        newRule_XtraWidePlayer = 
    	'body {'
    +		'background-size: calc(1818px*'+multi+');'
    +		'}'
    +	'#wrap, #content, #header, #topnavbar {'
    +		'width: calc(980px*'+multi+');'
    +		'}'
    +	'#navbarborder, #navbar {'
    +		'width: calc(976px*'+multi+');'
    +		'}'
    +	'.filmicerik object, .filmicerik embed, .filmicerik iframe, .filmicerik {'
    +		'width: calc(964px*'+multi+');'
    +		'}'
    +	'.filmicerik object, .filmicerik embed, .filmicerik iframe {'
    +		'height: calc(714px*'+multi+');'
    +		'}'
    +	'div.leftC {'
    +		'width: calc(722px*'+multi+');'
    +		'}'
    +	'div.filmborder,  div.filmcontent {'
    +		'width: calc(975px*'+multi+') !important;'
    +		'}'
    +	'.leftC div.filmcontent {'
    +		' width: calc(100% - 323px) !important;'
    +		'}'
    +	'div#fastdizidata {'
    +		'width: calc(720px*'+multi+');'
    +		'padding-left: 35px;'
    +		'}'
    +	'div.alt {'
    +		'width: inherit;'
    +		'background-size: calc(138%);'
    +		'}'
    +	'.alt .fsag {'
    +		'margin: 5px 29px 0px 0px;'
    +		'}'
    +	'div.filmalti {'
    +		'padding-left: 25px;'
    +		'}'
    +	'div.filmaltiimg {'
    +		'padding-bottom: 21px;'
    +		'}'
    +	'div#respond {'
    +		'padding-left: 25px;'
    +		'}'
    +	'div.moviefilm {'
    +		'margin: 0 32px 25px 34px;'
    +		'}'
    +	'#sidebar {'
    +		'width: 317px;'
    +		'margin-top: -2px;'
    +		'}'
    +	'#content .sidebarborder {'
    +		'width: 315px !important;'
    +		'}'
    +	'#content .sidebar-right {'
    +		'width: 310px !important;'
    +		'}'
    +	'#content .sidebar-right h2 {'
    +		'width: 302px;'
    +		'background-size: cover;'
    +		'}'
    +	'div.filmana {'
    +		'width: 99%;'
    +		'}'
    +	'div.arama {'
    +		'margin-left: 175px;'
    +		'}'
    +	'#movies {'
    +		'margin-left: 0px !important;'
    +		'}';
    
    $("style#widePlayer").empty().html( newRule_XtraWidePlayer.formatString() );	
}

function fullplayer(corr)
{
    corr = corr !== undefined ? corr : 0;
    var newWindowWidth = $( window ).width() - 18 + corr,
        newRule_fullplayer =
		'div#topnavbar, div#header, div#navbarborder, .clear.h10, .clear, '
    +	'#wrap div[align=center], .leftC, div#sidebar, .footborder, div#footer, '
    +	'h1.yazitip, .fast_part, .fast_rating, .alt {'
    +		'display: none;'
    +		'}'
    +	'div#wrap, div#content, div#movies, div.filmcontent, .filmicerik {'
    +		'width: 100% !important;'
    +		'}'
    +	'.filmicerik object, .filmicerik embed, .filmicerik iframe, .filmicerik {'
    +		'height: '+( $( window ).height() - 18 + corr )+'px !important;'
    +		'}'
    +	'.filmicerik object, .filmicerik embed, .filmicerik iframe, .filmicerik {'
    +		'width: '+newWindowWidth+'px !important;'
    +		'}'
    +	'body {'
    +		'overflow: hidden;'
    +		'}'
    +	'#wrap {'
    +		'margin: 0;'
    +		'}'
    +	'#content {'
    +		'padding: 0px 0px 0px 0px !important;'
    +		'}'
    +	'#movies {'
    +		'margin-left: 0px !important;'
    +		'}'
    +	'.filmcontent, .filmicerik {'
    +		'padding-bottom: 10px;'
    +		'}';
    
    $("style#fullplayer").empty().html( newRule_fullplayer );
    $(".filmcontent").css('cssText','width: calc(100% - 2px) !important;');
    
    scrollIt(0);
}

$( window ).resize(function() { 
    if( $('html').hasClass('fullplayer') ) fullplayer(); 
});

function lightning()
{   
    var newRule_lightning = ' '
    +	'div#sidebar, .filmborder, .alt2, .alt .fsol, .facebok, .facepaylas, .alt .fsag, .center, .yazitip, .fast_part, .fast_rating, #topnavbar, #header, #navbarborder, .navMenue {'
    +		'opacity: 0.0;'
    +		'}'
    +	'body, div.alt {'
    +		'background: #191919;'
    +		'}'
    +	'body {'
    +		'background: rgb(18, 18, 18);'
    +		'}';
    $("style#lightning").empty().html( newRule_lightning.formatString()  );
}

function ScrollZoomTune(selection,zomms,tune,ani)
{    
    var position = $( selection ).position(); 
    $('body').css('zoom',zomms);
    
    if( position == "undefined" )
    {
        console.log('is undis');
    } else {
        position = position.top;
        position = position + tune;
        if( ani == 1 ){
            $('body').animate({ scrollTop: position * zomms });}
        else{
            $('body').scrollTop( position * zomms);
        }
    }
}

function Colorize(thisnode)
{
    var nextText, prevText;    
    $('#nextMenue, #prevMenue').hide();
    
    $(thisnode).prevAll().css('color','').attr('id','');
    $(thisnode).prev().css('color','lightblue').attr('id','next');

    prevText = $(thisnode).prev().text();
    if( prevText.search('S') > 1 ) 
    {
        $('#nextMenue .titles').text( prevText );
        $('#nextMenue').show();
    }
    
    $(thisnode).css('color','rgb(246, 120, 120)').attr('id','');
    $(thisnode).nextAll().css('color','').attr('id','');
    $(thisnode).next().css('color','rgb(146, 218, 146)').attr('id','prev'); 

	nextText = $(thisnode).next().text();    
    if( nextText.search('S') > 1 ) 
    {
        $('#prevMenue .titles').text( nextText ).show();
        $('#prevMenue').show(); 
    }    
}

$('#lightsoff').waitUntilExists(function()
{   
    $( "#lightsoff img" ).attr('id','lightningOff');
    $('#lightning').addClass('on');
    navMenue();
    
    $('#prevMenue, #nextMenue, #OrginMenue, #wideMenue, #XwideMenue').hide();
    //$('#' + GM_setValue( "swefiler_state" ) + 'Menue').show();
    
    $('#content > div.leftC > div:nth-child(1)').attr('id','movies');
    
    $( "#lightningOff" ).on('click',function(){	
        
        l('light',$('#lightning').hasClass('on'));  

        if( $('#lightning').hasClass('on') ) {
            $('#lightning').removeClass('on');
            lightning();
            
            $('.yazitip').css('opacity','0.4');
            $('#movies').css('opacity','1');
            $('#lightHolder').css('opacity','0.5');
            $('#fullMenue, #XwideMenue, #wideMenue, #orginMenue, #prevMenue, #nextMenue, #lightningOff').css('opacity','0.05');
            $('#lightningOff').css('opacity','1');
            
            $('#fullMenue, #XwideMenue, #wideMenue, #orginMenue, #prevMenue, #nextMenue, #lightningOff').on('mouseenter', function(){
                $(this).css('opacity','0.75');
            }).on('mouseleave', function(){
                $(this).css('opacity','0.05');
            });
            
            $('#lightHolder').on('mouseenter', function(){
                $(this).css('opacity','0.95');
            }).on('mouseleave', function(){
                $(this).css('opacity','0.5');
            });
            
        } else {
            $('#lightning').addClass('on');
            $("style#lightning").empty();
            
            $('#fullMenue, #XwideMenue, #wideMenue, #orginMenue, #prevMenue, #nextMenue, #lightningOff, .yazitip, #lightHolder').css('opacity','1');
            $('#fullMenue, #XwideMenue, #wideMenue, #orginMenue, #prevMenue, #nextMenue, #lightningOff, #lightHolder').on('mouseenter', function(){
                $(this).css('opacity','1');
            }).on('mouseleave', function(){
                $(this).css('opacity','1');
            });
        }
    });
    
    function removeHeadplayerCss()
    {
        $("style#widePlayer").empty(); 
        $("style#XtraWidePlayer").empty(); 
    } 
    
    $('#fullMenue').on('click',function(){
        if( $('html').hasClass('fullplayer') ) return false;
        $('html').addClass('fullplayer');
        $('#wideMenue').click();
        fullplayer(15);
        $("#lightningOff").click().css('opacity', $('#nextMenue').css('opacity') );
    });
    
    $('#XwideMenue').on('click',function(){
        removeHeadplayerCss();
        $( "#content" ).prepend( $( "#movies" ) );
        widePlayer();
        XtraWidePlayer();
		$('.sizeing').hide();
        $('#orginMenue').show();
        $('#wideMenue').show();
        $('#fullMenue').show();

        GM_setValue( "swefiler_state", "Xwide" );
    });
    
    $('#wideMenue').on('click',function(){
        removeHeadplayerCss();
        $( "#content" ).prepend( $( "#movies" ) );
        widePlayer();
		$('.sizeing').hide();
        $('#XwideMenue').show();
        $('#orginMenue').show();
        $('#fullMenue').show();

        GM_setValue( "swefiler_state", "wide" );
    });
    
    $('#orginMenue').on('click',function(){	
        
        $( ".leftC" ).prepend( $( "#movies" ) );  
        removeHeadplayerCss(); 
		$('.sizeing').hide();
        $('#XwideMenue').show();
        $('#wideMenue').show(); 
        $('#fullMenue').show();
        
        GM_setValue( "swefiler_state", "orgin" );         
    });
    
    //GM_deleteValue( "swefiler_state" );     
    function state()
    {
        $('#' + GM_getValue( 'swefiler_state' ) + 'Menue' ).click().addClass('gotGM');
        
        if( $('.gotGM').size() === 0 ) {
            setTimeout(function() {
                GM_setValue( "swefiler_state", "orgin" );
                state();
            }, 50);
        }
    }    
    state();
    
    document.addEventListener('keydown', function(e) {
        GM_log(e.keyCode);
        if (e.keyCode == 27) { //esc
            if( $('html').hasClass('fullplayer') === false ) return false;
            $("style#fullplayer").empty();
            $(".filmcontent, .filmcontent").css('cssText','');
            $('html').removeClass('fullplayer');
            $("#lightningOff").click().css('opacity', $('#nextMenue').css('opacity') );
        }
        if (e.keyCode == 109) { //-
            $("#prev").click();
        }
        if (e.keyCode == 66) { //b
            $('#fullMenue').click();
        }
        if (e.keyCode == 107) { //+
            $("#next").click();
        }
        if (e.keyCode == 76) { //L
            $("#lightningOff").click().css('opacity', $('#nextMenue').css('opacity') );
        }
        if (e.keyCode == 88) { //x
            $('#XwideMenue').click();
        }
        if (e.keyCode == 87) { //w
            $('#wideMenue').click();
        }
        if (e.keyCode == 79) { //O
            $('#orginMenue').click();
        }
    }, false);    
});

function clicking(x,y){

    var ev = document.createEvent("MouseEvent");
    var el = document.elementFromPoint(x,y);
    ev.initMouseEvent(
        "click",
        true /* bubble */, true /* cancelable */,
        window, null,
        x, y, 0, 0, /* coordinates */
        false, false, false, false, /* modifier keys */
        0 /*left*/, null
    );
    el.dispatchEvent(ev);
}

function scrollIt(time)
{
    setTimeout(function() {
        if( $(window).height() <= 866 ){
            ScrollZoomTune('#movies',1,100,1);
        } else {
            ScrollZoomTune('#movies',1,1,1);
        }
    }, time);
}

//while ( $('#fastdizidata > a:nth-child(1)').size() != 1 )
$('#fastdizidata > a:nth-child(1)').waitUntilExists(function()
{
    $('#prevMenue, #nextMenue').show();
    
    $('#fastdizidata > a:contains(' + $('#yazibasligi').text() + ')').each(function(){
        Colorize(this);
    });

    $('#fastdizidata > a').on('click',function(){
        Colorize(this);
        scrollIt(500);
    });
    
    $('#prevMenue').on('click',function(){
        $('#prev').click();
        $('#movies').focus();
    });
    
    $('#nextMenue').on('click',function(){
        $('#next').click();
        $('#movies').focus();
    });    
    
    $('.yazitip.cpointer').click();
});

$(document).ready(function(){

    if( $('#header .headerleft a').size() > 0 && $('.yazitip.cpointer').size() > 0 )
    {
        $('.yazitip.cpointer').click();
    }
    
    $('#movies').focus();
    
    scrollIt(1000);
    
    $('body').on('click',function(e){
        if( e.target == this && e.which == 1 ){ 
        	scrollIt(50);
            //clicking(750,350);
        }
    });
    
    function checkNumber( num, div )
    {
        return ( num % div === 0 ) ? true : false;
    }
    
    var div = 21, rof = div * 30;
    for ( var i=1; i <= rof; i++ ) 
    {
        if( checkNumber( i, div ) === true )
        {
            console.info( i / div + ' * ' +  div + ' = ' + i ); 
            //console.log('check number:',i + ' if divided by: ' + div + ' is an interger: ' + checkNumber( i, div ) );
        }
    }
});