﻿
var CustomizeThumbSeed = new Class({
             
    initialize: function(thumbSeedIndex, ddlLayoutID, ddlHeaderColorID, ddlBackgroundColorID, txtTitleID, chkboxRemoveBorderID, txtPrefixID,divThumbSeedPreviewID, ddlVideoCountID, fiveMinWidgetID)
    {        

        generateCodeThumbSeedObj = eval('generateCodeThumbSeedObj'+thumbSeedIndex);
    
        var classRef = this;
        this.thumbSeedIndex = thumbSeedIndex;
        this.ddlLayout = $(ddlLayoutID);
        this.ddlHeaderColor = $(ddlHeaderColorID);
        this.ddlBackgroundColor = $(ddlBackgroundColorID);
        this.txtTitle = $(txtTitleID);  
        this.chkboxRemoveBorder = $(chkboxRemoveBorderID); 
        this.divThumbSeedPreview = $(divThumbSeedPreviewID);
        this.ddlVideoCount = $(ddlVideoCountID);
        this.fiveMinWidget = fiveMinWidgetID;
//        this.divDisplayFooter = $('divDisplayFooter');
        
        
        if (txtPrefixID != undefined)
            this.txtPrefix = $(txtPrefixID);         
            
        this.txtTitle.setAttribute('maxLength', '21'); //for the default layout
        
        this.ddlLayout.addEvent('change', function(e){
            e = new Event(e);  
            
             classRef.SetVideoCountAndMaxLengthTitle();
            
            if(generateCodeThumbSeedObj)
            {
                generateCodeThumbSeedObj.Layout = classRef.ddlLayout.value;
                generateCodeThumbSeedObj.videoCount = classRef.ddlVideoCount.value;
                generateCodeThumbSeedObj.generate();
            }                          
            
            thumbSeed.layout = classRef.ddlLayout.value;
            thumbSeed.videoCountThumbSeedPage = classRef.ddlVideoCount.value;
            thumbSeed.draw();
            
            e.stop();
            window.focus();
        }); 
        
        this.ddlVideoCount.addEvent('change', function(e) {
            e = new Event(e);
            
            //Paramter for display videoCount with PlayList.
            
            thumbSeed.videoCountThumbSeedPage = classRef.ddlVideoCount.value;
            thumbSeed.draw();
            
            if(generateCodeThumbSeedObj)
            {
                generateCodeThumbSeedObj.videoCount = classRef.ddlVideoCount.value;
                generateCodeThumbSeedObj.generate();
            }   
            
            e.stop();
            window.focus();
        });
        
        this.ddlHeaderColor.addEvent('change', function(e){
            e = new Event(e);
            
            if (classRef.ddlHeaderColor.value == "NoHeader")
            {
              thumbSeed.displayHeader = false;
            }
            else
            {
                thumbSeed.displayHeader = true;
                thumbSeed.headerColor = classRef.ddlHeaderColor.value;
            }
            thumbSeed.draw();
            
            if(generateCodeThumbSeedObj)
            {
                generateCodeThumbSeedObj.HeaderColor = classRef.ddlHeaderColor.value;                
                generateCodeThumbSeedObj.generate();
            }
            e.stop();
            window.focus();
        });
                
        this.ddlBackgroundColor.addEvent('change', function(e){
            e = new Event(e);  
            
            thumbSeed.backgroundColor = classRef.ddlBackgroundColor.value;            
            thumbSeed.draw();
            
            if(generateCodeThumbSeedObj)
            {
                generateCodeThumbSeedObj.BackgroundColor = classRef.ddlBackgroundColor.value;
                generateCodeThumbSeedObj.generate();
            }
            e.stop();
            window.focus();
        });
        
        if (this.txtPrefix) {
            this.txtPrefix.addEvent('blur', function(e){ //care case user paste text with right click menu
                e = new Event(e);                          
                thumbSeed.directUrl = classRef.txtPrefix.value;
                generateCodeThumbSeedObj.Prefix = classRef.txtPrefix.value;
                generateCodeThumbSeedObj.generate();
                thumbSeed.draw();
                e.stop();
            });
        }
        
        if (BrowserDetect.version == "6" && BrowserDetect.browser == "Explorer") {
            this.txtTitle.addEvent('click', function(e){
                e = new Event(e);
                thumbSeed.draw();     
                e.stop();
            });
        }
        this.txtTitle.addEvent('keyup', function(e){
            e = new Event(e);  
            if (BrowserDetect.version == "6" && BrowserDetect.browser == "Explorer")
                thumbSeed.draw();                          
            classRef.changeTitle();
            generateCodeThumbSeedObj.Title = classRef.txtTitle.value;
            generateCodeThumbSeedObj.generate();
            
            e.stop();
        });           
        this.txtTitle.addEvent('blur', function(e){ //care case user paste text with right click menu
            e = new Event(e);
            if (BrowserDetect.version == "6" && BrowserDetect.browser == "Explorer")
                thumbSeed.draw();                          
            classRef.changeTitle();
            thumbSeed.title = classRef.txtTitle.value;
           
            e.stop();
        }); 
        this.chkboxRemoveBorder.addEvent('click', function(e){
            e = new Event(e);
            if (classRef.chkboxRemoveBorder.checked)
                {
                thumbSeed.displayBorder = false;
                generateCodeThumbSeedObj.changeBorder = true;
                }
            else
                {
                thumbSeed.displayBorder = true;
                generateCodeThumbSeedObj.changeBorder = false;
                }
                
            generateCodeThumbSeedObj.generate();
                thumbSeed.draw();
           
        });
//        this.chekBoxRemoveFooter.addEvent('click', function(e){
//            e = new Event(e);
//            if (classRef.chekBoxRemoveFooter.checked)
//            {
//            thumbSeed.displayFooter = false;
//            generateCodeThumbSeedObj.displayFooter = false;
//            }
//            else
//            {
//            thumbSeed.displayFooter = true;
//            generateCodeThumbSeedObj.displayFooter = true;
//            }
//            generateCodeThumbSeedObj.generate();
//            thumbSeed.draw();
//        });
                
    },

    changeTitle: function()
    {
        var obj = $('Fivemin_title__' + this.fiveMinWidget);
        
        if(obj)
        {
            obj.innerHTML = this.txtTitle.value;
        }                           
    },
    
    ChangeDdlVideoCount : function(minVideo, maxVideos)
    {
    
        this.ddlVideoCount.options.length = 0;
        
        var j = this.ddlLayout.value == "425X400" ? 3 : 1;
       
        for (i=minVideo; i<maxVideos + 1 ; i+=j)
        {
            var opt = document.createElement('option');          
            
            opt.text = i;
            opt.value = i;     
            
            try {
                this.ddlVideoCount.add(opt, null); // standards compliant; doesn't work in IE
            }
            catch(ex) {
                this.ddlVideoCount.add(opt); // IE only
            } 
        }
        
        this.ddlVideoCount.options[this.ddlVideoCount.options.length -1].selected = true;
    
    },
    
    SetVideoCountAndMaxLengthTitle: function()
    {
        titleLimit = eval('titleLimit'+this.thumbSeedIndex);
        
        switch (this.ddlLayout.value)
        {                               
            case "120X120":
                this.txtTitle.setAttribute('maxLength', '10');
                titleLimit.limitNumber = 10;
                this.ChangeDdlVideoCount(1 ,1);
//                this.divDisplayFooter.style.display = 'none';
                break;                                                       
                            
            case "160X600":
                this.txtTitle.setAttribute('maxLength', '12');
                titleLimit.limitNumber = 12;
                this.ChangeDdlVideoCount(1,5);
//                this.divDisplayFooter.style.display = '';
                break;                           

            case "250X250":
                this.txtTitle.setAttribute('maxLength', '21');
                titleLimit.limitNumber = 21;
                this.ChangeDdlVideoCount(1,2);
//                this.divDisplayFooter.style.display = '';
                break;                                            

            case "300X250":
                this.txtTitle.setAttribute('maxLength', '25');
                titleLimit.limitNumber = 25;
                this.ChangeDdlVideoCount(1,2);
//                this.divDisplayFooter.style.display = '';
                break;
                
            case "468X60":
                this.txtTitle.setAttribute('maxLength', '45');
                titleLimit.limitNumber = 45;
                this.ChangeDdlVideoCount(1,2);
//                this.divDisplayFooter.style.display = 'none';
                break;

            case "500X175":
                this.txtTitle.setAttribute('maxLength', '51');
                titleLimit.limitNumber = 51;
                this.ChangeDdlVideoCount(1, 4);
                //                this.divDisplayFooter.style.display = 'none';
                break;

            case "575X100":
                this.txtTitle.setAttribute('maxLength', '51');
                titleLimit.limitNumber = 51;
                this.ChangeDdlVideoCount(1, 3);
                //                this.divDisplayFooter.style.display = 'none';
                break;    
                
            case "590X96":            
                this.txtTitle.setAttribute('maxLength', '51');
                titleLimit.limitNumber = 51;
                this.ChangeDdlVideoCount(1,3);
//                this.divDisplayFooter.style.display = 'none';
                break;                
                         
            case "700X180":            
                this.txtTitle.setAttribute('maxLength', '61');
                titleLimit.limitNumber = 61;
                this.ChangeDdlVideoCount(2,5);
//                this.divDisplayFooter.style.display = '';
                break;
                
            case "728X90":
                this.txtTitle.setAttribute('maxLength', '64');
                titleLimit.limitNumber = 64;
                this.ChangeDdlVideoCount(1,4);
//                this.divDisplayFooter.style.display = 'none';
                break;   
            case "425X400":
                this.txtTitle.setAttribute('maxLength', '42');
                titleLimit.limitNumber = 42;
                this.ChangeDdlVideoCount(3,9);
//                this.divDisplayFooter.style.display = '';
                break;   
            case "205X335":
                this.txtTitle.setAttribute('maxLength', '20');
                titleLimit.limitNumber = 20;
                this.ChangeDdlVideoCount(1,4);
//                this.divDisplayFooter.style.display = '';
                break;                                                                            
        }
    }    
});

var GenerateCodeThumbSeed = new Class({                
             
    initialize: function(textareaCodeID, sid, pageContainer)
    {
        //variables values should be like the enum Enums.SeedContainer
        this.WIDGET = 1;
        this.WIDGETYOURPICK = 2;
        
        this.textareaCode = $(textareaCodeID);
        this.sid = sid;
        this.pageContainer = pageContainer;
        
        this.Title = null;
        this.Categories = null;
        this.Layout = "250X250";
        this.HeaderColor = "black";
        this.BackgroundColor = "black";
        this.changeBorder = false;
        this.displayFooter = true;
        this.videoCount = 2;

        this.playList = '';
    },
    
    generate: function()
    {
        var Title =''
        if (this.Title  !=null && this.Title !='')
            Title = "thumbSeed.title='" +  this.Title + "';\n ";
       
        var ChangeBorder ='';
        if (this.changeBorder == true)
            ChangeBorder = "thumbSeed.displayBorder=false;\n ";
        
        var HeaderColor = "thumbSeed.headerColor = '" + this.HeaderColor + "';\n";
        if (this.HeaderColor == "NoHeader")
            HeaderColor = 'thumbSeed.displayHeader = false;\n ';
            
        var Prefix = '';
        if (this.Prefix)
            Prefix = "thumbSeed.directUrl = '" + this.Prefix + "';\n ";
            
        var displayFooter = '';
        if (this.displayFooter == false)
            displayFooter = "thumbSeed.displayFooter = false;\n";
        
        
        var featured = "";
        if(this.pageContainer == this.WIDGET)
        {         
            featured = "thumbSeed.featured = true; \n ";
        }                    
        
        var playList = "";
        if(this.pageContainer == this.WIDGETYOURPICK && this.playList != "")
        {
            playList = "thumbSeed.playList = '"+this.playList+"';\n ";
        }

        if(this.Categories == null || this.Categories == '')
        {
            this.textareaCode.value = "<div id='fiveMinWidget'></div>\n<script type='text/javascript'>\n var thumbSeed = new ThumbSeed('fiveMinWidget');\n thumbSeed.sid = "+this.sid+";\n " + Title + ChangeBorder + Prefix + "thumbSeed.layout = '" +this.Layout+"';\n thumbSeed.backgroundColor = '"+this.BackgroundColor+"';\n " + HeaderColor + displayFooter +" thumbSeed.videoCount = " + this.videoCount + ";\n "+featured + playList +"thumbSeed.Load();\n</script>";
        }
        else
        {
            this.textareaCode.value = "<div id='fiveMinWidget'></div>\n<script type='text/javascript'>\n var thumbSeed = new ThumbSeed('fiveMinWidget');\n thumbSeed.sid = "+this.sid+";\n thumbSeed.categories = '"+this.Categories+"';\n " + Title + ChangeBorder + Prefix +"thumbSeed.layout = '" +this.Layout+"';\n thumbSeed.backgroundColor = '"+this.BackgroundColor+"';\n " + HeaderColor  + displayFooter +" thumbSeed.videoCount = " + this.videoCount + ";\n "+featured + playList +"thumbSeed.Load();\n</script>";
        }         
    }
    
});


function AccountDeepSeed()
{     
    $('deepseedRadio1').addEvent('click', function(e)
    {
        e = new Event(e);
        $('txtPrefixWrapper').style.display = 'none';
        $('divDisplayWidget').style.display = 'none';
    });
    
    $('deepseedRadio2').addEvent('click', function(e)
    {
        e = new Event(e);
        $('txtPrefixWrapper').style.display = '';
	    $('divDisplayWidget').style.display = '';
    })        
}