function fc()
{
    document.x.url.focus();
}

function CheckFile(fn)
{
    var jpgTest = /.+\.((j|J)(p|P)(e|E)?(g|G))$/;
    var gifTest = /.+\.((g|G)(i|I)(f|F))$/;
    var pngTest = /.+\.((p|P)(n|N)(g|G))$/;
    var exeTest = /.+\.((e|E)(x|X)(e|E))$/;
    var msiTest = /.+\.((m|M)(s|S)(i|I))$/;
    var pdfTest = /.+\.((p|P)(d|D)(f|F))$/;
    var docTest = /.+\.((d|D)(o|O)(c|C))$/;
    var pptTest = /.+\.((p|P)(p|P)(t|T))$/;
    var zipTest = /.+\.((z|Z)(i|I)(p|P))$/;
    var rarTest = /.+\.((r|R)(a|A)(r|R))$/;
	
    if(exeTest.test(fn))
    {
    	alert("執行檔耶, 大哥您不要玩我阿...");
    	return;
    }
    else if(msiTest.test(fn))
    {
    	alert("安裝檔耶, 大哥您不要玩我阿...");
    	return;
    }
    else if(pdfTest.test(fn))
    {
    	alert("PDF 檔案, 麻煩長輩您自行存檔 XD...");
    	return;
    }
    else if(docTest.test(fn))
    {
    	alert("WORD 檔, 麻煩長輩您自行存檔 XD...");
    	return;
    }
    else if(pptTest.test(fn))
    {
    	alert("PPT 檔, 麻煩長輩您自行存檔 XD...");
    	return;
    }
    else if(zipTest.test(fn)||rarTest.test(fn))
    {
    	alert("壓縮檔耶, 這個偶不能抓 XD...");
    	return;
    }
    
    return true;
}

function capture()
{
    var now = 0;
    var real_delay = 0;
    var run_delay = $('#delay').val();
    var imgurl = 'cache.ppt.cc';
    var doCapt = 0; //是否要執行
        
    $("#relbtn").hide();
    $("#sbtn").hide();
    $("#joke").toggle();
    $("#a").show();

    if(run_delay >=1000)
    {
    	real_delay = (run_delay / 1000) + 120;
    }
    else
    {
    	real_delay = 120;
    }
    
    if($("#url").val()=='http://')
    {
        alert('請輸入網址後，再按抓取唷!');
        return;
    }

    var str = $('#url').val();
    var regex1=/^http:\/\/http:\/\//i;
    var regex2=/^http:\/\/https:\/\//i;
    var regex3=/^http:\/\/ftp:\/\//i;
    var regex4=/^(http|https|ftp):\/\//i;
    
    if (str.match(regex1))
    {
        str = str.replace(regex1,'http://');
        $('#url').attr('value',str);
    }
    
    if (str.match(regex2))
    {
        str = str.replace(regex2,'https://');
        $('#url').attr('value',str);
    }
    
    if (str.match(regex3))
    {
        str = str.replace(regex3,'ftp://');
        $('#url').attr('value',str);
    }
    
    if (!str.match(regex4))
    {
        str = 'http://' + str;
        $('#url').attr('value',str);
    }
            
    if(CheckFile($("#url").val()))
    {
    	$('#start').hide();
    	$('#ping').show();
    	
    	//檢查網址是否能連
        $.post('ping.php', {'url': $("#url").val(), 'rnd': Math.random() }, function(msg)
        {                	 
            if (msg == 'fail')
            {
                //不抓就停掉
                if (false == confirm('您要抓圖的網址不能連耶! 還是要抓嗎?'))
                {
                    $('#ping').hide();
                    $('#start').show();
                    return false;
                }
                else
                {
                    doCapt = 1;
                }
            }
            else
            {
                $.getJSON('webinfo.php', {'url': $("#url").val()}, function(info)
                {
                    $('#wtitle').attr('value',info.title);
                    $('#wdesc').attr('value',info.description);
                    $('#wkeyword').attr('value',info.keywords);
                });
                
                doCapt = 1;
            }
        
            if (doCapt == 1)
            {        
                $('#ping').hide();
                $("#helpmsg").html('執行抓取中... 可以趁現在填寫其他資料唷!');
                $("#stop").show();
                $("#start").hide();
                $("#delay").hide();
                $("#cc").html(''); //進度列歸零
                $("#a").html('<img src="loading.gif" /h>');
                $("#timebar").html('0 %');
                    
                $("#timebar").everyTime(1000,function(i)
                {
                        now = i;
                        var per = Math.round(i* 100 / real_delay);
                        if(per >= 100 ) per = 99;
                        $(this).html(per + ' %');
                        if(i < 123 ) $("#cc").append('|');
                });
        
                $.post('catch.php', {'url': $("#url").val(), 'delay': run_delay, 'rnd': Math.random()}, function(msg)
                { 
                    if (msg == 'fail')
                    {
                            $("#a").html('抓太久因此失敗了，囧rz! 要不要再試一次? (檢查網址)');
                    }
                    else if (msg.length == 32)
                    {
                        var prefix = msg.charAt(0) + '/' +msg.charAt(1) + '/' +msg.charAt(2) + '/';
                        $("#a").html('<a href="http://' + imgurl +'/'+ prefix + 'src_' + msg + '.png" target="_blank"><img src="http://'+imgurl+'/'+ prefix + 'thumb_' + msg + '.png" style="border: 1px ridge #000000"></a>&nbsp;&nbsp;<a href="http://ppt.cc/cut/?urlfile=http://' + imgurl +'/'+ prefix + 'src_' + msg + '.png"><font size=2>→縮圖剪剪樂!</font></a>');
                        $("#a").append('<input type="hidden" name="hash" value="' +msg+ '">');
                        $("#helpmsg").html('抓取完成，可以點選圖片查看是否正確!');
                        $("#relbtn").show();
                        $("#sbtn").show();
                        $("#joke").hide();
                        $("#x").attr('action','gen.php');                            
                    }
                    else
                    {
                        $.get('http://ppt.cc/alertmail.php?alertmsg=' + encodeURIComponent($("#url").val()));
                        $("#a").html('Orz....靈異事件，請通知站長!');
                        $("#helpmsg").html('');
                    }               
                    
                    $("#timebar").stopTime();
                    $("#timebar").html('100 % (費時 ' + now + ' 秒)');
                    $("#start").show();
                    $("#stop").hide();
                    $("#delay").show();
                    $("#cc").html('||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||');
                });
            }
        });
    }
}

